當前位置:才華齋>計算機>java語言>

淺談Java語言與Java 技術

java語言 閱讀(2.12W)

Java語言是一種適用於網路程式設計的語言,它的基本結構與C++極為相似,但卻簡單得多。它集成了其它一些語言的特點和優勢,又避開了它們的不足之處。本文就Java語言與Java 技術展開論述,歡迎閱讀!

淺談Java語言與Java 技術

語言的出現

自從1946年世界上第一臺電子計算機問世以來,計算模式的發展經歷了三個階段:集中計算模式、分散計算模式和網路計算模式。Internet的出現,為在網路計算模式下的科學計算和資訊處理提供了良好平臺。然而,要充分利用網路計算模式的功能與效益,平臺的執行環境是個制約因素,而Java語言和Java技術則是解決這一問題的最佳途徑。

1991年,SUN公司的Jame Gosling,Bill Joe等人試圖為電視、烤箱等家用電器開發一種互動式的軟體系統,這種應用需要的是那種小而可靠的系統,它能夠移植,並且實時性好,適用於網路分佈環境。流行的C++是自然的選擇。不過,開發過程中遇到的許多難以克服的困難使他們意識到必須徹底解決問題了,最終,開發成功了一個名為Oak的軟體,此中蘊藏著Java的原型,當時,並未引起人們的注意。1994年下半年,隨著Internet的迅猛發展,環球資訊網WWW的快速增長,促進了Java語言研製的進展,使得它逐漸成為Internet上倍受歡迎的開發與程式語言。1995年5月Java正式問世,一些著名的計算機公司紛紛購買了Java語言的使用權,如Microsoft、IBM、Netscape、Novell、Apple、DEC、SGI等。因此,Java語言被美國著名雜誌PC Magazine評為1995年十大優秀科技產品(計算機類僅此一項入選)之一,隨之大量出現了用Java編寫的軟體產品,受到工業界的重視與好評,認為“Java是八十年代以來計算機界的一件大事”。微軟總裁比爾·蓋茨在認真觀察了一段時間後,確認“Java是長時間以來最卓越的程式設計語言”,並確定微軟整個軟體的開發戰略從PC單機時代向以網路為中心的計算時代轉移,而購買Java則是他的重大戰略決策的實施部署。

因此,Java的誕生必將對整個計算機產業發生深遠的影響,對傳統的計算模型提出了新的挑戰。SUN Microsystem公司的總裁Scott McNealy認為:Java對Internet和WWW開闢了一個嶄新的時代。

有人預言:Java將成為網路上的“世界語”,今後,用其他語言編寫的軟體統統都要用Java語言來改寫。

語言的主要特點

Java語言是一種適用於網路程式設計的語言,它的基本結構與C++極為相似,但卻簡單得多。它集成了其它一些語言的特點和優勢,又避開了它們的不足之處。它的主要特點如下:

2.1簡單性

Java與C++相比,不再支援運算子過載、多級繼承及廣泛的自動強制等易混淆和較少使用的特性,而增加了記憶體空間自動垃圾收集的功能,複雜特性的省略和實用功能的增加使得開發變得簡單而可靠。

簡單化的另一個方面是Java的系統非常小,其基本解釋和類支援部分只佔40KB,附加的基本標準庫和執行緒支援也只需增加175KB。因此,Java應用軟體能在相當小的系統之上獨立工作。

2.2平臺的獨立性

這是Java最吸引人的地方。由於它採用先編譯成中間碼(位元組碼),然後裝載與校驗,再解釋成不同的機器碼來執行,即“Java虛擬機器”的思想,“遮蔽”了具體的“平臺環境”特性要求,使得只要能支援Java虛擬機器,就可執行各種Java程式。

2.3面嚮物件的技術

面向物件(O-O)的技術是近年來軟體開發中用得最為普遍的程式設計方法,,它通過把客觀事物進行分類組合、引數封裝、用成員變數來描述物件的性質、狀態,而用方法(成員函式)來實現其行為和功能。O-O技術具有繼承性、封裝性、多型性等眾多特點,Java在保留這些優點的基礎上,又具有動態聯編的特性,更能發揮出面向物件的優勢。

2.4多執行緒

多執行緒機制使應用程式能並行執行,Java有一套成熟的`同步原語 ,保證了對共享資料的正確操作.通過使用多執行緒,程式設計者可以分別用不同的執行緒完成特定的行為,而不需要採用全域性的事件迴圈機制,這樣就很容易實現網路上實時的互動行為。

2.5動態性

Java的設計使它適合於一個不斷髮展的環境。在類庫中可以自由地加入新的方法和例項變數而不會影響使用者程式的執行。並且Java通過介面來支援多重繼承,使之比嚴格的類繼承具有更靈活的方式和擴充套件性。

2.6安全性

Java有建立在公共金鑰技術基礎上的確認技術.指示器語義的改變將使應用程式不能再去訪問以前的資料結構或是私有資料,大多數病毒也就無法破壞資料.因而,用Java可以構造出無病毒、安全的系統。

Java語言除上述主要特點外,還有高效能、分佈性、強大性、解釋性、可移植性等,此處不再 贅述。

語言的發展

Java自正式問世以來已經歷了四年的歷程,時間雖短,發展極快。一年一度在美國舊金山召開的世界Java One語言開發者大會(Java One Developer Conference)盛況空前正說明了這一點。四年中每年的Java One大會,既是瞭解Java最新技術動態、應用成果和下一步發展趨勢的最好場所,又是推動下一年Java快速發展的重要動力。首屆Java One大會於1996年召開,各屆簡況如下:

1996年5月29-31日,第一屆,出席會議者6500餘人,來自工業界的超過一半。有人評價說:“這是近年計算機界最光輝的一次盛會”。工業界相當看好Java語言,認為它的使用將會引起一場軟體革命:從軟體的設計風格、設計方法、設計目標到設計過程,都會產生徹底的變革,“甚至會改變此星球的生活方式”。

1997年,第二屆,出席會議者10000人。Java的追隨者不斷增加,應用開發迅速起步。

1998年3月24-27日,第三屆,出席會議者14000餘人(註冊人數),註冊門票售價1195美元,否則1395美元,即使如此,仍有不少人不惜工本,擠入會場。本次會議除了軟體巨頭微軟未參加會議外,幾乎所有的計算機公司都參加了。展廳內設300多個展臺,先後舉行了90場專題討論會,每場參加的人數從千人至五六千人不等。會議的主題是:通過Java的培訓來帶動Java軟體的開發和技術研究,從而發展生產力,獲取高額利潤,提高生活質量,推動資訊產業的進步。會議展出的內容大致如下:

Java開發工具軟體,如:JMF、JDK、Symantec Visual Cafe、Java Dynamic Management Kit、JFC、JNDI、Java Studio 等;

企業資訊管理解決方案軟體,如:EJB(Enterprise JavaBeans);

基於Java技術的資訊家電,如:機頂盒、Java電話等;

個人資訊綜合服務(Java戒指)、社會資訊綜合查詢亭(Kiosk);

電子商務軟體、智慧卡、Java Card API 等;

網路計算環境下的Java伺服器軟體、遠端方法呼叫(RMI)、基於Java技術的移動計算裝置;

JMS(Java Message Service)用於出版、票據訂閱的軟體;

JOS(Java OS)、基於Java技術的NC和Java Station。

1999年6月15-18日,第四屆,出席會議者達20000人,300多家廠商參展,舉辦400多場技術講座,555名演講者慷慨陳詞,精彩紛呈。這次大會的主要特點是:

Java框架結構被梳理清晰

本次JavaOne大會上,Sun公司的一個重大舉措就是公佈了Java平臺的最新架構。重新定義的Java平臺以Java 2為核心,由面向企業和伺服器市場的企業版Java 2(J2EE)、面向傳統PC客戶機市場的標準版Java 2(J2SE)和麵向資訊電器等後PC終端裝置市場的Micro版Java 2(J2ME)三大部分組成。其中,J2EE包括Enterprise JavaBeans(EJB)、Java Server Pages & Java Servlets、Java Mail API和Java Massage Service組成。而J2ME則是原有的Personal Java、EmbeddedJava、JavaCard以及剛剛推出的Kjava組成。雖然新框架結構中的內容都是已有的,但這樣重新定義和組合,使得Java平臺的概念簡單化,從而變得易於理解,更適合於進行市場推廣。

2)重點放在企業平臺

隨著Internet的飛速發展,企業計算模式正摒棄C/S結構而採用Web-Browser結構,此即瘦客戶端/胖伺服器、大容量資料庫的3層或N層體系結構。由於Java的特點,使得它在開發伺服器端的應用程式方面有著得天獨厚的優勢,面向伺服器端的J2EE為當今逐漸流行的N層體系結構提供了一個標準的Java計算平臺:介面一致、工具簡易、豐富、Web頁面互聯便捷,從而能大大加速和簡化各種應用系統的開發。

3) 加速後PC時代的程序

計算機的發展創造了Internet,但是計算機現在卻不是訪問Internet的唯一方式。正在出現的資訊化、智慧化的消費類電子產品打破了PC作為資訊終端的壟斷地位,成為人類進入Internet的新門戶。資訊終端的多元化預示著所謂後PC(post-PC)時代的到來。消費類的資訊終端量大面廣,是典型的瘦客戶機,其本身的資源和能力不能與PC相比,但必須更加智慧化,並對伺服器端的管理提出了更高的要求。而Java平臺恰恰滿足了這種要求。本次大會推出的Kjava虛擬機器能執行在16以上的微處理器上,佔用記憶體少,人們可以隨心所欲,在資源有限的裝置上方便地開發出各種各樣的應用,直接執行在不同的消費類或其它電子裝置上;而Jini的出現為Java網路連線提供了公共標準,使得任何Java裝置都可以連入網路中被自動識別,並可充分利用網路上已有的各種資源。大力推進Jini的發展是Sun公司加速後PC時代程序的一項重要策略。

4)應用系統異彩紛呈

與上屆大會一樣,展出內容有:應用工具、應用系統、資訊家電等。特別在實時系統開發方面,以IBM為首開發出了應用於工業實時環境的Java嵌入系統,展現出Java在工業領域的廣闊應用前景。

Java語言的出現和發展,得到了IT業界的青睞,它像一面大旗,凝聚了世界眾多的廠商與Sun公司一道,結成了對抗微軟壟斷的聯盟。許多知名廠商紛紛購買Java許可證,目前已有90多萬個軟體開發商加入了Java陣營,1億個Java終端使用者,幾千種Java應用軟體產品,1500餘種Java書籍(自Java問世4年來,平均每天出版一本)。這真是IT業界的盛事!

IBM公司提出“高舉Java大旗,全力以赴”的口號,它在全世界的11個國家有28個實驗室,集聚了2500餘名技術人員,全天侯24小時進行全方位開發;晶片巨人Intel提出“抓住時機,佔領Java陣地”!決心使Intel晶片系統成為開發Java應用執行的最佳平臺;Novell則宣稱“Java是Novell的未來,未來是伺服器端Java的市場”;作為Java發明者的Sun公司,堅持“保衛Java大旗,發展Java之路”的方針,通過對Java的“研究椘攔罈構造棽饈詶推廣”的過程,從而佔領市場。此外,HP、Oracle、Apple、Sybase、Netscape、Informix、3Com、Motorola等公司均是Sun的堅強同盟。

在我國,Java的引進與開發起步早,發展水平基本與世界同步。目前,Sun公司已在中國建成了由5個授權中心、20多個Internet/Intarnet Java解決方案中心和10所Java大學、若干培訓中心組成的三級結構。全面推動Java在中國的普及、應用、研究、開發,培養了數以十萬計的Java開發人員。此外,Sun還牽頭成立了中外軟體廠商的開發聯盟。

在中國,Java的開發可以說是“人才濟濟,成果累累”。如清華大學王克巨集教授帶領的課題組面向全國,自96年開始舉辦了多期Java培訓班和講座,開設了數期本科生、研究生Java課程,出版了“Java系列叢書”10餘冊 ,承擔了國家“九五”攻關專案“基於Java技術的互動式遠端教學系統”,並與日本就Java開發進行了國際合作,成績斐然;東大阿派下屬的寶鋼東軟軟體技術研究中心是國內是首屈一指的Java研發骨幹企業,該中心從95年起就開始了Java的研發,目前,已掌握了Personal Java的核心移植技術,併成功地將JVM移植到汽車導航平臺。此外,他們還開發出支援Jini協議的即插即用網路印表機軟體,以及一套Jini資訊家電網路的視覺化演示環境,完成了基於JavaBeans的元件化軟體開發及執行支援環境等多項成果;在臺灣,22家知名計算機公司成立了“Java聯盟”,並在臺北建立了“Java開發中心”,新竹建立了“Java語言實驗室”;在香港,舉行了全島Java杯比賽,掀起了學習Java的熱潮 。Java的浪潮洶湧澎湃,席捲全球!

4. Java技術

Java發展至今日,已不僅僅是一種程式語言,實際上已形成了一門技術.其內容包括:

1)Java軟體包

Java語言及其程式設計技術、JavaOS、Java開發環境與工具、Java語言的各種軟體包、資料庫介面JDBC等。

2)Java虛擬機器及其規範

3) Java嵌入技術(Java晶片)

已推出的有Java戒指、Java卡等。1999年8月2日,Sun公司宣佈名為MAJC的專門為Java語言設計的的晶片優化研製成功,欲與Intel試比高低。該晶片在設計時採用了模組式高效能運算引擎,實質為一種晶片級並行處理機,能以更有效的方式分解計算任務,特別適合處理多媒體資料。Sun公司希望通過MAJC晶片的釋出催生出一個基於Java語言的微處理器家族,與Intel公司競爭。設想中的Java處理器將應用在從低價消費電子產品到高階因特網伺服器領域。

4)Java計算

基於Java技術的企業Internet/Intranet資訊系統以及其他應用系統。

5)Jini技術

1999年初正式釋出後,立刻得到業界的廣泛支援。Jini的出現為Java網路連線提供了公共標準,使得任何Java裝置都可以連入網路中被自動識別,並可充分利用網路上已有的各種資源。它把網路上的各類裝置(包括消費類電子裝置如行動電話、PDA、DTV、HPC、NC、遊戲機、電冰箱、智慧卡等等)和各種軟體組合成一個單一、動態的分散式系統,使網路更易於操縱、易於管理,具有更高的可配置性。Jini將使網路具有自發性,它的出現大大擴充套件了“計算”和“計算機”的含義,極大地簡化了網路操作,對家庭使用者來說,使用網上裝置即插即用,就像使用電話一樣方便。Java和Jini 不僅可以不依賴於Windows為代表的作業系統,而且引導著資訊產業的潮流,使Sun公司能在未來的、非PC類電子產品的數字化市場中強佔制高點。

6)Jiro平臺

異質網路環境中安裝的儲存系統的多樣性和分佈性,給儲存管理帶來了巨大的挑戰。使用者和開發人員都希望能有一種技術,能更好地促進企業儲存管理方案的開發。而Jiro平臺正是解決此問題的革命性方案。Jiro平臺實現了Java和Jini 技術,它是一個便於使用者管理異質網路上由各種伺服器、儲存和裝置組成的混合環境的開放式儲存管理平臺。它對作業系統是中立的。Jiro為跨異質儲存區域網(SAN)的管理服務和裝置提供了一個開放平臺,允許伺服器、儲存和聯網裝置在異質網路環境中無縫地協同工作。Jiro平臺為開發者帶來的好處有:

允許開發者利用各種實現管理儲存網路的目標功能建立應用;

提供了一個可以在各種應用、服務和裝置之間互動操作的元件模型;

允許裝置易被增加、刪除;

允許應用或服務被自動更新。

1999年7月,Sun釋出了正式的Jiro規範草案,供公眾討論、修改。目前,Jiro平臺的團體成員已超過25家,支援Jiro平臺的廠商超過300家。有眼光的廠商紛紛加入到這些組行列,從而加快了Jiro的發展。

結語

Java自問世以來,以其得天獨厚的優勢,在IT業界掀起了研究、開發它的浪潮,顯示了“鵬程萬里”的美好前景。作為一種與底層硬體無關的、“編寫一次,到處執行”的高階語言和計算平臺,Java天生就具有將網路上的各個平臺連成一體的能力,真正實現了“網路就是計算機”的理念。以Java為代表的網路的成長,改變了我們的聯絡方式、生活方式、學習方式和經營方式。它的來到使我們目睹了一場類似印刷術的重大變革。毫無疑問,它將影響人類社會的發展,這就是:Java加速人類進入網路時代!