1. 程式人生 > >Java虛擬機器系列001

Java虛擬機器系列001

作為當今排名靠前的Java程式語言,要想學好Java語言,必須知其然知其所以然,對Java的語法,特徵的掌握是基礎,其次,對於Java是如何運作,物件如何建立的,GC是如何回收物件的,也必須有一個清楚的瞭解,這樣才可以更好的瞭解JAVA是如何由編寫,到編譯,到執行的,我將整理Java系列,讓大家對Java有個全新的瞭解。重點:語言只是用來開發的工具,只有先熟練執行工具才可以得心應手的進行開發,重在思想。

起源

Java的前身是oak(橡樹),由james Gosling博士領導的綠色計劃開始啟動,他的目的是開發一個能都在各種消費性電子產品上執行的程式,在1995年的網際網路的興起,oak迅速找到適合自己發展的方向,更名為java。

1996年JDK1.0,

1997年JDK1.1,

1998年JDK1.2

2000年JDK1.3

2002年JDK1.4

2004年JDK1.5

2006年JDK1.6

2011年JDK1.7

2014年JDK1.8

2016年JDK1.9

2018年JDK10

2018年JDK11

技術體系

基本概念:

JRE:包含Java虛擬機器以及一些JAVA API類庫,可以理解為java的執行環境,以及所需要的庫函式。

JDK:Java程式設計語言,Java虛擬機器,Java API類庫三部分的統稱。

對於Java的理解,有兩種理解,第一種狹義的理解是Java就是一個單純的程式語言,用於各種開發;第二種廣義的理解是Java是一個完整的體系,是一個平臺,可以在這個平臺的基礎上進行各種開發,具體可分為四個平臺:

JAVA SE:支援面向桌面的應用得Java平臺,以前稱為J2SE.

JAVA EE:應用於企業級的後臺系統的開發,以前稱為 J2EE.

JAVAME:應用於移動終端的開發,以前稱為J2ME.

JAVA Card:支援一些小的應用程式執行在小的記憶體裝置上  的平臺.

Java虛擬機器

Java虛擬機器,是一個軟體,執行在作業系統上,用來執行位元組碼檔案,可對java語言進行編譯生成位元組碼檔案,並進行執行,Java語言的一處編寫,到處執行,就是歸功於位元組碼,也可以說是虛擬機器,因為對於不同的作業系統,只需下載不同的虛擬機器,但是對於位元組碼檔案,都是統一的,所以實現了好的移植性。

Java虛擬機器的版本也有很多,最早的java虛擬機器可能是 1996年sun公司釋出的JDK1.0中的Sun Classic VM,今天他已經不再使用,後面還有更多優秀的虛擬機器被開發出來,例如,Sun hotspot VM,Sun Mobile-Embedded VM/Meta-Circular VM,BEA JRockit/IBM J9 VM,Apache Harmony/Google Android Dalvik VM,Microsoft JVM等等. 

注意:Java虛擬機器可以執行位元組碼檔案,只要是程式語言,可以被編譯成位元組碼,便可以在虛擬機器上執行,例如:Groovy,jython…

本部分主要用於對Java的起源,含義,執行環境,以及所涉及的部分進行大致的講解,總結內容參考《深入理解Java虛擬機器》一書,並加上本人的一些理解。謝謝。