JAVA核心技術

《JAVA核心技術》(第8版)是2011年電子工業出版社出版的圖書,作者是昊斯特曼、Gary Cornell。

基本信息

什麼是Java?
Java好象隨處可見 - 甚至在TV中。儘管如此,說清楚Java是什麼和它能做什麼卻不那么容易。剛開始接觸Java的人通常有三個問題:
什麼是Java?
Java能做什麼?
Java怎樣改變我的生活
讓我們先回答第一個問題:什麼是Java?
Java既是一種程式語言,又是一個平台。
Java程式語言
Java是具有以下特徵的高級程式語言:
簡單
面向對象
可分布
可解釋
強壯
安全性
結構化
輕便
功能強大
多執行緒
動態
Java既可以被編譯,也可以被解釋。通過編譯器,可以把Java程式翻譯成一種中間代碼 - 稱為位元組碼 - 可以被Java解釋器解釋的獨立於平台的代碼。通過解釋器,每條Java位元組指令被分析,然後在計算機上運行。只需編譯一次,程式運行時解釋執行。下圖說明了它是如何工作的:
可以把Java位元組碼看作運行在Java虛擬機(Java VM)上的機器代碼指令。每中Java解釋器,不管是Java開發工具還是可以運行Java小應用程式的Web瀏覽器,都是一種Java VM的實例。JavaVM也可以由硬體實現。
Java位元組碼使“寫一次,到處運行”成為可能。可以在任何有Java編譯器的平台上把Java程式編譯成位元組碼。這個位元組碼可以運行在任何Java VM上。例如,同一個Java程式可以運行在WindowsNT、Solaris和Macintosh上。
Java平台
平台是程式運行的硬體或軟體環境。Java平台與大多數其它平台不同之處在於它是運行於其它基於硬體平台的純軟體平台。大多數其它平台是硬體和作業系統的結合。
Java平台由兩部分組成:
Java虛擬機(Java VM)
Java應用程式界面(Java API)
我們已經介紹了Java VM,它是Java平台的基礎,可以移植到各種基於硬體的平台上。
Java API是軟體組件的集合,它們提供了很多有用的功能,如圖形用戶界面(GUI)。Java API被分組為相關組件的庫(包)。下圖描述了一個運行在Java平台上的Java程式,如應用程式(application)或小應用程式(applet)。如圖中顯示的,Java API和VM把Java程式從硬體依賴中分離出來。
作為一種獨立於平台的環境,Java比本地代碼慢一些。然而,聰明的編譯器、很好地調製過的解釋器和即時位元組碼編譯器可以在不犧牲可移植性的條件下使Java的表現接近本地代碼。
第二頁:Java能做什麼?
最有名的Java程式可能是Java小應用程式(applet)。小應用程式是遵循一定的規則,運行在支持Java的瀏覽器上的Java程式。然而,Java不只用來為WWW寫聰明的、娛樂性的小應用程式,它是一個通用的、高級程式語言和強大的軟體平台。使用通用的Java API,可以寫很多種程式。
最常見的程式類型可能是小應用程式和應用程式,Java應用程式是直接運行在Java平台上的獨立的程式。一種特殊的稱為“伺服器”的應用程式可以支持網路上的客戶。伺服器的包括Web伺服器、代理伺服器、郵件伺服器、列印伺服器和導入伺服器。另一種特殊的程式是servlet,它與小應用程式類似 - 在都
是應用程式的實時擴展方面。不運行在瀏覽器中,servlet運行在Java伺服器上,配置或裁剪伺服器。
Java API是如何支持各種程式的呢?它通過軟體包提供各種功能。核心API(core API)是實現Java平台功能的API。核心API有以下特徵:
要素:對象、字元串、執行緒、數字、輸入和輸出、數據
結構、系統屬性、日期和時間等。
小應用程式:Java小應用程式使用的指令集。
網路:URL、TCP和UDP插槽、IP位址。
國際化:可以寫可本地化的代碼。程式可自動適應特殊的
場所和以適當的語言顯示。
安全性:在低級和高級兩方面,包括電子簽名、公/私密
鑰管理、訪問控制、認證。
軟體組件:稱為JavaBean,可以插到已有的組件結構中,
如微軟的OLE/COM/Active-X結構、OpenDoc、網景的Live
Connect。
對象系列化:可以通過RMI(遠程方法調用)進行輕量級
的持續和通訊。
JDBC(Java資料庫互聯):提供對大量關係資料庫的統一
訪問。
Java不僅有核心API,還有標準擴展。標準擴展定義了3D、伺服器、合作、電話、演講、動畫等的API。
第三頁:Java怎樣改變我的生活?
我們不能保證你學Java會成名、發財或者找到工作。Java只是使你的程式更好和比其它語言付出更少的努力。我們相信Java會幫你做以下事情:
迅速開始:雖然Java是一種功能強大的面向對象的語言,但是它很容易學,尤其是對那些熟悉C或++的程式設計師。
寫更少的代碼:程式韻律學(類、方法等)使用Java寫的程式比用C++寫的小四倍。
寫更好的代碼:Java語言鼓勵好的編程實踐,它的垃圾收集功能可以幫你避免使用記憶體時出問題。Java的面向對象、JavaBeans組件結構和它的廣泛涉及、容易擴展的API可以使你重用別人的經過測試的代碼和引入儘量少的錯誤。
更快地開發程式:開發時間只相當於寫同樣C++程式的一半。為什麼?因為用Java寫的代碼行數更少,Java也比C++程式簡單。
用100%純Java可以避免對平台的依賴性:通過遵守它的語言規則和避免使用其它語言庫,可以保持程式的可移植性。
寫一次,到處運行:因為100%純Java程式可以編譯成獨立於機器的位元組碼,它們可以運行在任何Java平台上。
更容易的分發軟體:可以容易地從一個中心伺服器升級小應用程式。小應用程式可以利用Java的新類即時裝載而不用重新編譯整個程式的特性。

相關詞條

相關搜尋

熱門詞條

聯絡我們