了解java語言的特性和能力。發展過程
了解java語言的特性和能力。
了解java語言的發展過程
學習使用java2 sdk的基本開發工具
編輯,編譯和運行你的第一個java程序
為源程序代碼加入注釋,也包括文檔注釋。
使用javadoc工具和文檔注釋來系統管理制作的類、
使用jar工具 打包所有的java應用程序。Applet。組件或servlet用于發布使用、
Java具有一下的使用方式:
◎Java生成的獨立運行程序,可運行在不同規模和不同復雜度的計算機上。小到潛入芯片的一小段程序,大到運行在大型超級市場的訂單錄入系統。
◎生成基于web的applet在網絡中,它們可隨html文檔被下載并被web瀏覽器運行。
◎編寫java類,作為web服務器的擴充。在web服務器上的頁面被發送到瀏覽器前,為其準備動態內容
@在網絡中發布程序。Java類可以被用來在不同及其間傳遞數據,或調用彼此機器上的方法。
◎ 應用基于java的技術,滿足企業廣域范圍內的數據交換處理。Sun。ibm等公司,在研究java的最前線技術時,制定出了許多技術標準規范,其中主要規范為:定義java的類與事務處理器、其他開發語言生成的類或其他不同開發環境的窗體之間的工作方式。至今為止,這些標準仍在繼續發展之中。
3種java程序的編制方法
◎ 應用程序能夠獨立運行在任何規模的計算機上,他可以是大型應用軟件,也可以是簡單的小型應用程序。它們既可以通過命令行運行,也可通過圖形用戶界面運行。一個應用程序是否包含連接數據庫、網絡或其它應用程序的接口,也取決于該應用程序索使用的應用程序接口(api)集。Java應用程序只運行在java虛擬機(jvm)上。它們不是為某個特定的處理器指令集或操作系統編譯的,而是為java平臺編譯的。
◎ Applet是一種可以通過html文檔運行的程序。Html表示超文本標記語言,是一種全局性的信息機構,是網頁使用的標記語言,它將文檔中的不同部分通過關鍵字建立連接,使信息以交互方式進行搜索。Html具有專門為applet定義的標識符。當瀏覽器顯示html文檔時,基于java的web瀏覽器要有一個jvm來運行applet。Applet常被用來增加網頁的視覺和多媒體效果。
◎ Servlet就像applet,是用來優化網頁設計的java程序。于applet不同的時,servlet運行在基于java的web服務器上,用來生成被發送到客戶端瀏覽器上進行顯示的html文檔。
例如,可以使用servlet對web客戶端提交的html窗體進行加工,制作成一個新的回應網頁。
Java技術具有名副其實的真正的代碼可重用性:
◎ javabean使java類,或者使java類組,但是要遵循一套非常嚴格的技術標準。可以通過構建javabean組建,將java類變成可重用的和可配置的軟件組件。通過使用開發工具,程序員可以將javabean組件連接起來并應用到java應用程序中,就像用標準微處理芯片焊接一個集成電路板一樣。許多的java核心類都是javabean組件,如用于gui的可視化圖形對象。
◎ 企業型java小系統(enterprise java bean, ejb)使一種非常有前途的新興技術。Ejb標準定義了分布式企業環境下,服務器組件的軟件體系結構。它的目標式讓程序員專注于java類需要執行的業務邏輯。企業型java服務器(enterprise java server,ejs)用于管理以下服務:事務處理、安全、命名服務來定位和鑒別ejb。通常,編程員需要一個ejb開發工具來構造和發布ejb。
Java的健壯性
@在jvm上運行的程序不能直接訪問機器本地系統資源,除非通過jvm支持的api。因此,java程序不能訪問不允許應用程序使用的內存區域,不能錯誤調用api,不能執行一些比較低級的操作,因為這些操作常常式用其他語言編制的程序出錯的原因。
@jvm執行自己哦能夠內存單元管理。Java語言能很大程度的降低濫用內存單元的幾率,而其他的語言一般斗明確指出內存的申請和釋放必須由程序員來完成。程序員很難任意訪問內存單元,可jvm卻可以實時檢查內存中可用的界限。因此,程序從來不會在不該訪問內存單元的時候進行訪問,或錯誤調用了他們本不想調用的內存單元。
@java平臺具有一個強大的管理機制用來處理錯誤和意外事件。當某個操作不能被完全執行時,用其他編程語言編制的程序往往回過早地終止。在jvm中有一個處理錯誤信息和意外事件的對象叫Exception(異常)。這個對象記錄了所有發生過的意外事件的類型和原因。程序員可以微所有類型的意外事件編寫自己所需的程序。例如,當程序試圖讀取一個不存在的文件時,錯誤處理程序就會捕捉到錯誤信息并做出適當處理。盡管錯誤處理模塊不是java語言所獨有的,但它在java環境中的使用卻有更可靠的表現。
@java語言是類型安全的,也就是 說,不能隨意的使用某個信息,所有的操作都應該基于該信息所定義的類型。也不能玩弄投機取巧的的小伎倆,因為這種做法在其他語言中是許多程序出錯的罪魁禍首。例如,不能用你的數據結構覆蓋系統中的數據結構,然后再對其進行修改。
Java的安全性,附加的安全策略控制帶碼的使用:
@jvm在一個沙盒(sandbox)中運行不可信代碼。沙盒為jvm分配專門運行有限特權代碼的區域。沙盒中的代碼只有很少的權限來訪問文件系統,而且不允許進行任何損害jvm或本地系統完整性的操作。例如,不可信代碼不能寫入本地文件,不能直接訪問本地代碼,不可以讀取特定的系統屬性。
@從不可信站點下載的字節碼(如未知服務器),在執行前,必須先要進行檢驗。檢驗系統是一個安全機制。它必須保證字節碼文件的構造是正確的。例如,它必須核查每條指令都有一個合法操作碼。
@如果applet具有一個可識別的數字簽名密鑰,jvm也能接受applet。
Java語言的動態性 在java語言中,根據使用的環境不同,動態一詞有不同的解釋:
@z在運行時,jvm動態的將程序所需的類加載進來。只有當類第一次被使用時,jvm才將其加入。Jvm不需要將程序使用的所有類都加載進來,也不需要在程序執行前將所有類都準備出來。
@當同一個繼承層次支持一個以上的類調用方法時,jvm使用動態綁定來決定使用那個調用方法。
@java軟件的卡發過程也具有動態的性質。程序員可采用增量的方式構建類集盒創建、測試程序、并用不同的方法進行組合。
Java的歷史
1995年5月,sun公司正式發布了java編程語言。在此之前的兩個版本分別時alpha盒beta。Java平臺第一次正式發布的開發工具套件盒api叫做java開發工具(java Development Kit,JDK)。
自從1995年以來,java語言的使用者以一個客觀的速度在增長。當第一個java平臺推出后,許多流行的web瀏覽器廠商迅速為其瀏覽器添加了內置的1.0jvm來支持applet。
1997年,sun公司推出了1.1版本。這個版本在java開發語言中增添了許多特性,尤其突出的時,對于類集的補充和修改,最后形成了java api。雖有,sun又發布了該版本的javabean標準規范。幾個月之后,眾多的流行web瀏覽器開發商迅速的升級了他們內置的jvm,以便和1.1版本兼容。
從1997~1999年的三年之間,sun公司多次升級了JDK的版本。1998年,sun將java基礎類java Foundation Classes,JFC)開發成了一個獨立的軟件包。它隨即被用到了JDK
1998年前期,sun公司推出了java Servlet開發工具包(Java Servlet Development Kit,JSDK)上的servlet api.。與此同時,市面上迅速出現了支持servlet的web服務器。一些服務器,如ibm的websphere 還推出了能同時支持更早規范的web服務器。
早在1998年下半年之前,java2平臺以為人們熱切期望,并被預先稱為JDK的1.2版本。當java2平臺推出以后,java開發工具和api被改名為java 2 SDK,標準版本。JFC被完全集成到了java 2中。Java 2 平臺在以下方面進行了突出改善:數據庫訪問、分布式計算、與CORBA的相互性和web瀏覽器上的java 2 插件jvm。
大約1998年末,EJB的第一個標準規范完成隨之,一些企業開始采用支持EJB的EJS。
1999年6月,sun公司推出的3個版本的java 2 平臺。第一個是java 2標準版(java2 Sandard Edition, J2SE),也就是SDK。第二個版本是java2企業版(java2 Enterprise Edition,J2EE),t它涵蓋了企業級的java bean(Enterprise java bean,EJB)的內容,并規范了web應用程序的概念。Web應用程序是基于web的解決方案,由java程序,html網頁和其他可被配置到N層的企業環境的資源構成。 第三個版本是java微版本,主要適用于web電話、智能卡和其他便攜式電子產品。
1999年8月,sun公司發布了jsp1。0的標準規范和與之配套的java服務器web卡發套件,作為這項規范的引用實施。