- Java語言程序設計
- 陸遲編著
- 1925字
- 2019-01-09 14:01:48
第1章Java語言概述
1.1 Java語言發展和特點
1.1.1 Java語言的發展
1990年,美國Sun公司的James Gosling、Bill Joe等人,為在電視、控制烤箱等家用消費類電子產品上進行交互式操作而開發了一種與平臺無關、可靠性強、小而靈活的編程語言,但當時并沒有引起人們的注意。直到1994年下半年,Ⅰnternet的迅猛發展,環球信息網WWW的快速增長,人們發現Java這種中性平臺及可靠性強的語言恰恰就是全球信息網在等待的語言。Java的開發人員基于網絡對Java進行了一系列的改進,融合了C和C++等語言的優點,形成了現在這套與眾不同的面向對象的通用程序設計語言。
Java的原名叫Oak(橡樹),但在申請注冊商標時,發現Oak已經有人用了。在想了一系列名字后,最終,使用了提議者在喝一杯Java咖啡時無意提到的Java。
Java(JDK 1.0)正式發表于1995年5月。Java的“Write Once,Run Anywhere(一次編寫,到處運行)”口號使得Java一出現就引起廣泛的注意,用Java開發的軟件可以不用修改或重新編譯而直接應用于多種不同平臺的計算機上。Java語言的眾多優點使得它逐漸成為Ⅰnternet上受歡迎的開發與編程語言。Java的誕生對傳統的計算模型提出了新的挑戰。
Java語言有著廣泛的應用前景,可以從以下幾個方面來考慮其應用。
(1)所有面向對象的應用開發,包括面向對象的事件描述、處理、綜合等;
(2)計算過程的可視化、可操作化的軟件的開發;
(3)動態畫面的設計,包括圖形圖像的調用;
(4)交互操作的設計(選擇交互、定向交互、控制流程等);
(5)Ⅰnternet的系統管理功能模塊的設計,包括Web頁面的動態設計、管理和交互操作設計等;
(6)Ⅰntranet(企業內部網)上的軟件開發(直接面向企業內部用戶的軟件);
(7)與各類數據庫進行連接并進行各種操作的實現;
(8)其他應用類型的開發設計。
目前,針對不同領域的軟件開發,Java有三個平臺可供選擇:
Java SE:Java標準版,可用于開發桌面應用和一般的網絡應用。
Java EE:Java企業版,可用于開發一般和復雜的分布式的綜合網絡應用。
Java ME:Java微型版??捎糜陂_發可用資源較少的個人數字助理、手機等終端設備上的應用。
1.1.2 Java語言的特點
Java是一個迅速發展的網絡編程語言,它是一種新的計算概念。
首先,作為一種程序設計語言,它簡單、面向對象、分布式、解釋執行、不依賴于機器的結構、具有可移植性、魯棒性、安全性、并且是多線程的、動態的,具有很高的性能。
其次,Java最大限度地利用了網絡。一種嵌入HTML語言中,通過Web頁發布到Ⅰnternet,稱為Java小程序(Applet)的Java程序,可在網絡上運行而不受CPU和環境的限制。一旦載入小程序,就可以放心地來生成多媒體的用戶界面或完成復雜的計算而不必擔心病毒的入侵。小程序不僅可以和圖像、聲音、動畫等一樣從網絡上下載,它還可以進行人機交互,動態地改變圖像、動畫的顯示和聲音的播放。
另外,Java還提供了豐富的類庫,以滿足網絡化、多線程、面向對象系統的需要,使程序設計者可以很方便地建立自己的系統。
1.1.3 Java程序的工作機制
學習Java語言,有必要了解Java的工作機制,這將更有助于理解Java語言的特點。
對于運行在 Ⅰnternet上的網絡應用程序,需要有良好的可移植性。因為 Ⅰnternet是由各種各樣不同類型的終端、服務器和PC等硬件設備組成的,而且在這些設備上運行的軟件系統也是多種多樣的,所以 Ⅰnternet上的網絡應用程序應該具有在各種不同的軟硬件平臺上均可正常工作的能力。Java的工作機制使得它具有了這樣的能力。
Java的工作機制是這樣的:編程人員首先編寫好源代碼,然后經編譯生成一種二進制的中間碼,稱為字節碼(byte code),最后再通過運行與操作系統平臺環境相應的一種稱為Java解釋器的運行機構來執行編譯生成的字節碼。雖然不同的平臺環境需要有各自相應的解釋器,但是任何一個平臺上的解釋器,對于一段Java程序的字節碼來說卻是相同的,它們對Java字節碼呈現出完全相同的面貌。也就是說,Java的運行機制是利用解釋器來隱藏網絡上平臺環境的差異性的。由此可見,Java實現了二進制代碼級的可移植性,在網絡上實現了跨平臺的特性。
Java的解釋器和運行時系統又稱為“Java虛擬機(JVM,Java Virtual Machine)”,是駐留于計算機內存的虛擬計算機或邏輯計算機,實際上是一段負責解釋執行Java字節碼的程序。JVM能夠從字節碼流中讀取指令并解釋指令的含義,每條指令都含有一個特殊的操作碼,JVM能夠識別并執行它。從這個意義上說,Java可以被稱為是一種“解釋型”的高級語言。
若Java解釋器是一個獨立的應用程序,并可以在操作系統下直接啟動,那么它解釋執行的程序被稱為“Java應用程序(Application)”;若Java解釋器包含在一個WWW的客戶端瀏覽器內部,使得這個瀏覽器能夠解釋字節碼程序,則這種瀏覽器能夠自動執行的Java程序被稱為“Java小程序(Applet)”。這兩種程序從程序結構到運行機理都不相同,Java應用程序多在本地或服務器上運行,而Java小程序則只能嵌入到網頁中運行。
無論是Java應用程序還是Java小程序,其程序源代碼文件都以.java為文件擴展名,源代碼文件編譯后產生的二進制字節碼文件以.class為文件擴展名。
- Python概率統計
- Getting Started with Gulp(Second Edition)
- TensorFlow Lite移動端深度學習
- 機器學習系統:設計和實現
- 教孩子學編程:C++入門圖解
- Expert Data Visualization
- 從Java到Web程序設計教程
- UVM實戰
- Creating Stunning Dashboards with QlikView
- 案例式C語言程序設計實驗指導
- Building Slack Bots
- Modular Programming with JavaScript
- Kohana 3.0 Beginner's Guide
- Beginning PHP
- Web程序設計與架構