## 一Java語言概述
Java是一種可以撰寫跨平臺應用程序的面向對象的程序設計語言。Java 技術具有卓越的通用性、高效性、平臺
移植性和安全性,廣泛應用于PC、數據中心、游戲控制臺、科學超級計算機、移動電話和互聯網,同時擁有全球最大
的開發者專業社群。
? ? ? Java由四方面組成:
? ? ? (1)Java編程語言,即語法。
? ? ? (2)Java文件格式,即各種文件夾、文件的后綴。
? ? ? (3)Java虛擬機(JVM),即處理*.class文件的解釋器。
? ? ? (4)Java應用程序接口(Java API)。
## 二Java語言平臺版本
JavaSE(Java 2 Platform Standard Edition)標準版
是為開發普通桌面和商務應用程序提供的解決方案。該技術體系是其他兩者的基礎,可以完成一些桌面應用程序
的開發。
JavaME(Java 2 Platform Micro Edition)小型版
是為開發電子消費產品和嵌入式設備提供的解決方案。
JavaEE(Java 2 Platform Enterprise Edition)企業版
是為開發企業環境下的應用程序提供的一套解決方案。該技術體系中包含的技術如 Servlet、Jsp等,主要針對于
Web應用程序開發。
## 三Java語言特點
(1)簡單性?
? ? ? Java語言是一種面向對象的語言,它通過提供最基本的方法來完成指定的任務,只需理解一些基本的概念,就可以用
它編寫出適合于各種情況的應用程序。Java略去了運算符重載、多重繼承等模糊的概念,并且通過實現自動垃圾收集大
大簡化了程序設計者的內存管理工作。
(2)面向對象?
? ? ? Java語言的設計集中于對象及其接口,它提供了簡單的類機制以及動態的接口模型。對象中封裝了它的狀態變量以
及相應的方法,實現了模塊化和信息隱藏;而類則提供了一類對象的原型,并且通過繼承機制,子類可以使用父類所提供的
方法,實現了代碼的復用。?
(3)分布式處理
? ? ? Java是面向網絡的語言。通過它提供的類庫可以處理TCP/IP協議,用戶可以通過URL地址在網絡上很方便地訪問其
它對象。 ?
(4)結構中立
? ? ? Java解釋器生成與體系結構無關的字節碼指令,只要安裝了Java運行時系統,Java程序就可在任意的處理器上運
行。這些字節碼指令對應于Java虛擬機中的表示,Java解釋器得到字節碼后,對它進行轉換,使之能夠在不同的平臺運
行。 ??
(5)開源 ?
? ? ? Java是一種開源的語言,我們可以看到別人的Java代碼。
(6)跨平臺
? ? ? 與平臺無關的特性使Java程序可以方便地被移植到網絡上的不同機器。同時,Java的類庫中也實現了與不同平臺的
接口,使這些類庫可以移植。另外,Java編譯器是由Java語言實現的,Java運行時系統由標準C實現,這使得Java系統本身
也具有可移植性。
(7)解釋性
? ? ? Java解釋器直接對Java字節碼進行解釋執行。字節碼本身攜帶了許多編譯時信息,使得連接過程更加簡單。
(8)高性能
? ? ? 和其它解釋執行的語言如BASIC、TCL不同,Java字節碼的設計使之能很容易地直接轉換成對應于特定CPU的機器
碼,從而得到較高的性能。
(9)多線程 ?
? ? ? 多線程機制使應用程序能夠并行執行,而且同步機制保證了對共享數據的正確操作。通過使用多線程,程序設計者可
以分別用不同的線程完成特定的行為,而不需要采用全局的事件循環機制,這樣就很容易地實現網絡上的實時交互行
為。
(10)動態性
? ? ? ava的設計使它適合于一個不斷發展的環境。在類庫中可以自由地加入新的方法和實例變量而不會影響用戶程序的
執行。并且Java通過接口來支持多重繼承,使之比嚴格的類繼承具有更靈活的方式和擴展性。 ?
(11)安全性
? ? ? 用于網絡、分布環境下的Java必須要防止病毒的入侵。Java不支持指針,一切對內存的訪問都必通過對象的實例變
量來實現,這樣就防止程序員使用"特洛伊"木馬等欺騙手段訪問對象的私有成員,同時也避免了指針操作中容易產生的錯
誤。
## 四Java語言的跨平臺性
通過Java語言編寫的應用程序在不同的系統平臺上都可以運行。只要在需要運行java應用程序的操作系統上,先
安裝一個Java虛擬機(JVM Java Virtual Machine)即可。由JVM來負責Java程序在該系統中的運行。我們里看一個圖
解:

因為有了JVM,所以同一個Java程序在三個不同的操作系統中都可以執行。這樣就實現了Java程序的跨平臺性。
也稱為Java具有良好的可移植性。注意一點:Java語言是跨平臺的,而JVM不是跨平臺的。
## 五JDK、JRE、JVM的作用和關系
JRE(Java Runtime Environment ? Java運行環境):包括Java虛擬機(JVM Java Virtual?Machine)和Java程序所需的
核心類庫等,如果想要運行一個開發好的Java程序,計算機中只需要安裝JRE即可。也就是JRE:JVM+類庫。
JDK(Java Development Kit ? ? Java開發工具包):JDK是提供給Java開發人員使用的,其中包含了java的開發工
具,也包括了JRE。所以安裝了JDK,就不用在單獨安裝JRE了。其中的開發工具:編譯工具(javac.exe)打包工具
(jar.exe)等。也就是JDK:JRE+JAVA的開發工具。
為什么JDK中包含一個JRE呢?
其一,開發完的程序,總需要運行一下看看效果。
其二,也是最重要的,JDK中的開發工具其實都是java語言編寫的應用程序,為了方便使用才打包成exe文件,如
果沒有JRE,那么這些工具是運行不了的。
三者的關系簡單而言就是:使用JDK開發完成的java程序,交給JRE去運行,由JVM保證跨平臺。
## 六JDK的下載和安裝
下載
(1)打開Oracle官網:http://www.oracle.com

(2)點擊Downloads和選擇Java for Developers

(3)選擇Downloads和Java SE

(4)針對不同操作系統,下載不同的JDK版本識別計算機的操作系統

安裝
安裝的過程中記住自己所安裝的路徑。我的安裝路徑為:E:\Java\develop\jdk1.8.0_25
## 七HelloWorld案例
(1)打開E:\Java\develop\jdk1.8.0_25中的bin目錄,我們可以看到很多的應用程序文件,其中有兩個我們需要使
用,就是javac.exe和java.exe。

(2)首先編寫java源代碼程序,擴展名.java。我們在這個文件夾新建一個記事本文件,編寫以下的代碼,最后將記
事本文件保存為HelloWorld.java格式的文件。因為現在只有當前目錄下有javac和java,所以現在將Java源文件保存在
當前目錄下。
~~~
public class HelloWorld{
public static void main(String[ ] args)
System.out.println("Hello World");
}
}
~~~

(3)打開DOS,使用cd命令進入到指定的文件夾:E:\Java\develop\jdk1.8.0_25\bin

(4)在命令行模式中,輸入javac命令對源代碼進行編譯,生成字節碼文件
格式為:javac HelloWorld.java

(5)編譯完成后,如果沒有報錯信息,輸入java命令對class字節碼文件進行解釋運行,執行時不需要添加.class擴展
名。
格式為:java HelloWorld

最后我們用圖來解釋Java程序的運行和工作原理:
