Java 開始

Java之父是James Gosling,這種語言的出現最初是爲了在電視機、機頂盒、錄像機上開發設計便於移植且高效的程序。1995年推出了JDK1.0, 1998年推出Java 2 Platform。根據不同的應用領域,分爲Java SE,Java EE, Java ME。


 

    Java作爲一門豐富而複雜的新技術,包括以下技術層面的內容:Java編程語言,Java類庫,JVM,Java工具,Java應用程序等。Java技術簡單、健壯,忽略了指針和內存管理(Java=(C++)-- ++);純面向對象,更能反映人類對世界的認識和處理模式,具有很強的代碼重用性;分佈式,擁有一個網絡對象協議庫,可以像訪問當地文件一樣訪問Internet上的對象;改進的解釋性,採用預編譯生成class文件,減輕運行時的解釋工作,另外有些JRE還採用JIT編譯器將字節代碼編譯成機器碼直接運行,對於重複執行的服務器端軟件可以達到C語言的速度;安全,刪除了指針和內存分配,運行時檢驗字節代碼,拒絕非法內存訪問,越權訪問等;平臺無關性(write once, run everywhere);多線程,高性能。
    JVM在Java運行環境中處於核心地位。它隱藏了計算機硬件和操作系統的複雜性,保證了該語言的跨平臺特性。實際上它相當於虛擬的一臺計算機,包括指令集[CPU],寄存器,類文件格式,棧,垃圾蒐集堆和存儲區。垃圾回收就是將程序不再使用的內存塊釋放出來,以提供給其他程序使用System.gc()。
    JVM中內存劃分爲堆棧,堆,靜態存儲區。常見的垃圾回收算法有引用計數法,追蹤算法,緊湊算法,拷貝算法,分代算法和適應算法。垃圾回收發生的不可預知性,精確性。不同的JVM可能採用不同的垃圾收集,垃圾收集的實現和具體的JVM以及JVM的內存模型有着非常緊湊的關係。
    Java源程序通過“編譯”,轉換成字節碼存儲在.class文件中。字節代碼在運行時被加載、校驗並在解釋器中運行。Java計數運行字節代碼包含如下三大步驟:
1.加載代碼--由類加載器執行;
2.校驗代碼--有字節碼校驗器執行;
3.執行代碼--有運行時的解釋器執行。
    

 
    
    類加載器爲程序的執行,加載說需要的類。類加載器將本地文件系統的類名空間與來自網絡的類名空間相分離,以增加安全性。字節代碼校驗器主要是檢驗代碼段語法格式是否正確,有無違反規則的非法代碼,是否違反對象訪問權限,是否試圖改變對象類型。
    JDK是Java開發工具包的縮寫,Java開發人員應該安裝JDK,通常JDK中已包含一個JRE拷貝。JRE是Java運行環境的縮寫,基本上就和JVM是同一個概念,運行Java程序應該安裝。
    應設置的環境變量包括:JAVA_HOME, PATH, CLASSPATH。在系統環境變量中創建,大小寫無所謂,若存在則點擊編輯,不存在則點擊新建。java_home:該環境變量的值就是 Java 安裝位置,一些 Java 版的軟件和一些 Java 的工具需要用到該變量,設置 PATH 和 CLASSPATH 的時候,也可以使用該變量以方便設置。Path使得系統可以在任何路徑下識別java命令設爲:
%JAVA_HOME%/bin;%JAVA_HOME%/jre/bin;CLASSPATH:也指定一個路徑列表,是用於搜索Java運行時需要用到的類。在 CLASSPATH 列表中除了可以包含路徑外,還可以包含 .jar 文件。Java 查找類時會把這個 .jar 文件當作一個目錄來進行查找。.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar (要加.表示當前路徑) 。
編譯代碼:javac Hello.java
運行代碼:java Hello(注:如果把該class所在路徑加入classpath中,則在任何路徑下可以執行這條命令)
    任何一個Java應用程序都要包含一個入口方法,程序運行時從這裏開始:
public static void main(string[] args);也可以寫成static public void main(string args[]);

總結:
java是一門豐富而複雜的而技術;
JAVA虛擬機處於核心地位,保障了JAVA的平臺獨立性;
虛擬機可以進行自動內存管理,並且進行安全檢查;
JAVA包含三個版本,分別適用於不同的應用需求;
開發JAVA 程序的三大步驟:編寫 JAVA 源程序,編譯源程序,運行程序。



轉自:http://bupter520.javaeye.com/blog/760074

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章