1. 程式人生 > >java入門【三】java概述

java入門【三】java概述

Java語言有下面一些特點 :簡單、面向物件、分散式、解釋執行、魯棒、安全、體系結構中立、可移植、高效能、多執行緒以及動態性。 

下面我們來看下java的執行原理

編譯型語言  VS  解釋性語言:

編譯型語言是通過專門的編譯器,將高階語言【一次性翻譯成】可被平臺(如OS作業系統)執行的機器碼,編譯一次,脫離開發環境可獨立執行,故效率高;但對編譯器嚴重依賴,而不同作業系統所使用的編譯器是各不相同的,所以造成了編譯型語言可移植性差的特點。

同樣的,解釋型語言也有專門的直譯器,將原程式解釋成特定的平臺可執行檔案,不同的是,解釋型語言不會進行整體的編譯,而是把編譯和解釋混合在一起執行。但解釋性語言跨平臺性好,只需通過不同的直譯器,將其解釋成某平臺可識別的指令即可。這是編譯的過程無法做到的。

 在理清java原理之前,你不得不Know:

java原理:

java執行的原理表示:首先原始檔通過編譯器編譯成位元組碼檔案class,然後在通過JVM中的直譯器將位元組碼檔案生成對應的可執行檔案。所以java即時編譯語言也是解釋性語言;

首先通過編譯器編譯,將源程式編譯形成class檔案,由於不同平臺JVM提供相同介面,故即便是不同平臺下將java編譯成class檔案,但通過相同介面的JVM進行解釋,均可將該環境下的位元組碼解釋形成該平臺下的可執行的java檔案,同時,由於不同作業系統的JVM提供的均相同介面,不同平臺的編譯器則只需要面對該JVM介面進行編譯,這些都決定了java語言具有良好的跨平臺性、移植性。

java環境變數的配置:

【Path】:在jdk的安裝目錄下,可以看到javac和java兩條命令,配置這個環境變數,可以找到javac和java來對原始檔編譯和解釋;

 

【ClassPath】

        而classpath變數,通過後來的學習得知,在jdk1.5以上版本便可以不用配置。首先要知道java源程式通過編譯生成的class檔案,預設會儲存到JRE檔案下,也就是java執行環境路徑下,在1.5之前的jdk還沒智慧到可以自動找到編譯好的類,進行下一步解釋操作,故需要手動配置classpath,指明class檔案路徑,在執行java命令形成可執行檔案。

【JavaHome】 

        另一個javahome再單獨執行java程式時是不需要進行配置的,因為編譯、解釋均已通過javac 和java命令完成。但在tomcat、jboss部署時需要配置該環境變數。

 

最後java版本記錄

版本              描述
1991年1月    Sun公司成立了Green專案小組,專攻智慧家電的嵌入式控制系統
1991年2月    放棄C++,開發新語言,命名為“Oak”
1991年6月    JamesGosling開發了Oak的直譯器
1992年1月    Green完成了Green作業系統、Oak語言、類庫等開發
1992年11月    Green計劃轉化成“FirstPerson”,一個Sun公司的全資母公司
1993年2月    獲得時代華納的電視機頂盒互動系統的訂單,於是開發的重心從家庭消費電子產品轉到了電視盒機頂盒的相關平臺上。
1994年6月       FirstPerson公司倒閉,員工都合併到Sun公司。Liveoak計劃啟動了,目標是使用Oak語言設計出一個作業系統。
1994年7月       第一個Java語言的Web瀏覽器WebRunner(後來改名為HotJava),Oak更名為Java。
1994年10月     VanHoff編寫的Java編譯器用於Java語言
1995年3月       在SunWorld大會,Sun公司正式介紹了Java和HotJava。
1996年1月       JDK1.0釋出
1997年2月       J2SE1.1釋出
1998年12月     J2SE1.2釋出
1999年6月       釋出Java的三個版本:J2SE、J2EE、J2ME
2000年5月       J2SE1.3釋出
2001年9月       J2EE1.3釋出
2002年2月       J2SE1.4釋出
2004年9月       J2SE1.5釋出,將J2SE1.5改名JavaSE5.0
2005年6月       JavaSE6.0釋出,J2EE更名為JavaEE,J2SE更名為JavaSE,J2ME更名為JavaME
2006年12月     JRE6.0釋出
2006年12月     JavaSE6釋出
2009年12月     JavaEE6釋出
2009年4月       Oracle收購Sun
2011年7月       JavaSE7釋出
2014年3月       JavaSE8釋出

Java 9 釋出於 2017 年 9 月 22 日