新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 學(xué)習(xí)方法與實踐 > JAVA基礎(chǔ):Java語言相關(guān)的重要術(shù)語解析

JAVA基礎(chǔ):Java語言相關(guān)的重要術(shù)語解析

——
作者: 時間:2007-11-13 來源:賽迪網(wǎng)技術(shù)社區(qū) 收藏
    Java,是一種解釋型語言。由SUN公司開發(fā),最初用于移動設(shè)備軟件開發(fā),結(jié)果卻因為Internet的發(fā)展而成名。 

  Java 語言基本上屬于一個完全面向?qū)ο蟮恼Z言,并且語言的設(shè)計仍然以簡捷為重點,因此有其它語言基礎(chǔ)的朋友學(xué)習(xí)Java語言會感覺比較簡單,對于這個語言學(xué)習(xí)的難點則是面向?qū)ο蟮南嚓P(guān)概念,包括:包、類、對象、實例、接口、繼承、重載與覆蓋,還有就是類、變量、函數(shù)的相關(guān)作用域,這些是語言學(xué)習(xí)的重點和難點。

  對于語言的學(xué)習(xí)可以參考《Java 2參考大全》,對于面向?qū)ο蟮膶W(xué)習(xí)可以參考《Think in Java》,先學(xué)語言打好基礎(chǔ),再學(xué)面向?qū)ο蟮母拍钜约霸O(shè)計,通過自己設(shè)計程序再進(jìn)一步去了解設(shè)計模式,循序漸進(jìn)地達(dá)到Java程序員的基本要求。

  學(xué)習(xí)Java還有個非常重要的就是類庫,因為沒有人還會從頭開發(fā)程序,SUN公司提供了一套完整的開發(fā)用的基礎(chǔ)類庫,如何用好這些類才是Java語言學(xué)習(xí)的重中之重。

  JVM (Java Virtual Machine, Java虛擬機)。

  就是Java程序運行的虛擬環(huán)境,因為Java是解釋型的語言,因此需要一個邊解釋邊運行的支撐環(huán)境。同時,JVM又是在OS(操作系統(tǒng))之上的,對于在JVM上運行的Java程序提供了統(tǒng)一的標(biāo)準(zhǔn)接口,從而屏蔽了操作系統(tǒng)的差異性,實現(xiàn)了Java代碼的“一次編寫,處處運行”的承諾,這個解釋說明。NET平臺理論上也可以實現(xiàn)這個功能,只是微軟沒有提供這樣的支持。

  為了提升程序運行的效率以及代碼知識產(chǎn)權(quán)的保護(hù),Java代碼會使用JDK中的編譯器編譯成字節(jié)碼(中間代碼),從而運行在JVM之上,但是這個編譯結(jié)果與C/C++這種編譯型語言編譯出來的結(jié)果不同,Java編譯出來的是一種結(jié)構(gòu)中立的中間文件格式,只能在JVM上執(zhí)行,而C/C++編譯出來的已經(jīng)是最終的執(zhí)行程序,操作系統(tǒng)只是管理和支撐應(yīng)用運行,但是編譯出來的結(jié)果已經(jīng)是機器碼。因此Java的Class文件可以使用反編譯工具轉(zhuǎn)換成 Java代碼進(jìn)行分析,推薦的反編譯工具是JAD及它的Eclise插件。

  許多公司都有開發(fā)自己的JVM,據(jù)測試數(shù)據(jù)顯示性能都比SUN提供的免費版本要好,但是我實際使用中沒有發(fā)現(xiàn)明顯地區(qū)別,而SUN也有高級但是收費的版本,因此性能上沒有顯示地提升還是使用免費地版本就可以了。

  JRE(Java Runtime Environment,Java運行環(huán)境)。JRE提供了類庫、JVM與其他組件來支持applet和Java應(yīng)用程序的運行。另外,JRE擁有兩個關(guān)鍵的發(fā)布技術(shù):Java Plug-in與Java Web Start,Java Plug-in支持applet運行在大部分瀏覽器上,Java Web Start則可以將一個獨立的應(yīng)用程序發(fā)布到網(wǎng)絡(luò)上。

  JRE同時還是J2EE平臺企業(yè)級應(yīng)用開發(fā)與部署的支撐技術(shù),但是不包括編譯器與調(diào)試器等各種工具去支持applet和應(yīng)用程序的開發(fā)。

  Java Plug-in.這個技術(shù)是JRE的一部分,用于連接瀏覽器與Java平臺。這個連接使得WEB站點的applets運行在客戶端的瀏覽器中。

  Java Web Start:只要擁有相同版本的JRE,獨立的Java應(yīng)用程序就可以通過這個技術(shù)發(fā)布到網(wǎng)絡(luò)上。


  JDK(Java Development Kit,Java開發(fā)工具)。

  包括了Java運行環(huán)境(Java Runtime Envirnment),一堆Java工具和Java基礎(chǔ)的類庫(rt.jar),還有Java類庫的源代碼(src.zip)以及學(xué)習(xí)用的例子 (sample與demo)。為了使程序安裝后就可以運行,許多Java應(yīng)用服務(wù)器會集成JDK,原因可以參考我所寫的《JRE與JDK在啟動應(yīng)用服務(wù)器中的作用》。

  無論是JRE還是JDK最主要是使用他們攜帶的JVM,以及安裝到JDK與JRE目錄下的LIB目錄里的JAR包。使用JRE還是 JDK都通過_HOME這個參數(shù)完成,而對LIB目錄下的JAR包則通過CLASSPATH目錄進(jìn)行添加。值得注意的是如果_HOME設(shè)置成JDK的安裝目錄,實際上用的是包含在JDK安裝目錄下的JRE目錄里的JVM.

  JDK里面還包括了開發(fā)所需要用的編譯、跟蹤、發(fā)布等多種工具,這里就不一一描述,大家可以在網(wǎng)上查詢資料,如果需要我這邊補充,也可以跟帖說明。

  J2SE( Java 2 Standard Edition, Java 2 標(biāo)準(zhǔn)版)。

  Java 2平臺標(biāo)準(zhǔn)版(現(xiàn)在叫Java SE)支持客戶端和服務(wù)器端的Java應(yīng)用程序開發(fā),如今還包括了和實時系統(tǒng)環(huán)境。Java SE還支持Java Web Services的開發(fā),并且還是Java EE平臺的基礎(chǔ)。

  Java SE平臺中有兩個主要的產(chǎn)品就是JRE與JDK.

  J2EE( Java 2 Enterprise Edition, Java 2 企業(yè)版)。

  J2EE(現(xiàn)在叫Java EE)是一種工業(yè)標(biāo)準(zhǔn),用于支持可移植、可擴展、健壯并安全的服務(wù)器端Java程序。Java EE提供了web服務(wù)、組件模型、管理和通訊API從而可以實現(xiàn)符合工業(yè)標(biāo)準(zhǔn)SOA框架與WEB應(yīng)用程序。Java EE平臺包括符合Java EE規(guī)范的應(yīng)用服務(wù)器,以及相關(guān)的工具、例子及幫助文件。還有符合Java EE標(biāo)準(zhǔn)的應(yīng)用程序的發(fā)布與調(diào)試工具。

  簡單來說Java EE就是一組規(guī)范組成的,這些規(guī)范合成到一起組成一個技術(shù)標(biāo)準(zhǔn)。這個標(biāo)準(zhǔn)現(xiàn)在是由JCP組織制定,最新的版本是2006年6月發(fā)布的Java EE 5.0,所有的應(yīng)用服務(wù)器產(chǎn)品都希望通過這樣的認(rèn)證。因為所有認(rèn)證過的產(chǎn)品從理論上講符合J2EE規(guī)范開發(fā)的應(yīng)用程序都可以平滑地移植,現(xiàn)實中我做的移植工作也只需要修改不到5%的內(nèi)容,并且大多是XML配置文件而不涉及到源代碼。這樣的好處使用戶無須綁定到某個廠商的平臺上,也為擴展這個市場打下了基礎(chǔ)。

  Java EE 5.0的認(rèn)證過程是必須通過SUN公司提供的軟件測試包,測試包里面包括了27000多個功能點的驗證,驗證通過后就可以獲得這個標(biāo)志,并且會在SUN的網(wǎng)站上掛出。http://java.sun.com/javaee/overview/compatibility.jsp

  在2006年12月Apusic 5.0全球第四家通過了這個認(rèn)證,這個事實也就說明中國的應(yīng)用服務(wù)器產(chǎn)品終于在技術(shù)上沒有了差距,甚至因為Apusic研發(fā)產(chǎn)品的態(tài)度專注,所以還領(lǐng)先了國外的主要競爭對手。

  Java EE SDK就是SUN公司開發(fā)的一個符合J2EE標(biāo)準(zhǔn)的應(yīng)用服務(wù)器,可以下載后免費使用來了解Java EE的最新技術(shù),當(dāng)然也可以下載Apusic 5.0這個也是符合Java EE最新標(biāo)準(zhǔn)的產(chǎn)品,而且會有更加友好的中文界面與中文幫助。

  寫的過程中,總覺得知識點都在相互關(guān)聯(lián)著,于是寫出來的東西好像會越來越多,無法收筆。因此,希望看過的朋友多給提寶貴意見,使我寫的東西更加有針對性,能夠為學(xué)習(xí)和使用J2EE技術(shù)的朋友,以及使用我們Apusic產(chǎn)品的客戶帶來收獲。 

 
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉