- 相關(guān)推薦
Java語言的簡(jiǎn)介
Java是一個(gè)由Sun公司開發(fā)而成的新一代編程語言。使用它可在各式各樣不同種機(jī)器、不同種操作平臺(tái)的網(wǎng)絡(luò)環(huán)境中開發(fā)軟件以下是百分網(wǎng)小編收集整理的關(guān)于Java語言的簡(jiǎn)介內(nèi)容,歡迎閱讀學(xué)習(xí)!
1.Sun公司和Java的誕生
美國(guó)硅谷有一句行話,每10年~15年有一次輪回。最近的一次輪回就是從Java開始。
Java是一個(gè)由Sun公司開發(fā)而成的新一代編程語言。使用它可在各式各樣不同種機(jī)器、不同種操作平臺(tái)的網(wǎng)絡(luò)環(huán)境中開發(fā)軟件。不論你使用的是哪一種WWW瀏覽器,哪一種計(jì)算機(jī),哪一種操作系統(tǒng),只要WWW瀏覽器上面注明了“支持Java”,你就可以看到生動(dòng)的主頁。Java正在逐步成為Internet應(yīng)用的主要開發(fā)語言。它徹底改變了應(yīng)用軟件的開發(fā)模式,帶來了自PC機(jī)以來又一次技術(shù)革命,為迅速發(fā)展的信息世界增添了新的活力。
Sun 的 Java 語言開發(fā)小組成立于1991年,其目的是開拓消費(fèi)類電子產(chǎn)品市場(chǎng),例如,交互式電視、烤面包箱等。Sun 內(nèi)部人員把這個(gè)項(xiàng)目稱為 Green ,那時(shí) World Wide Web 還在圖紙上呢。該小組的領(lǐng)導(dǎo)人是 James Gosling ,是一位非常杰出的程序員。他出生于1957年,于1984年加盟 Sun Microsystem 公司,之前在一家IBM研究機(jī)構(gòu)工作。他是SunNeWs窗口系統(tǒng)的總設(shè)計(jì)師。也是第一個(gè)用C實(shí)現(xiàn)的EMACS的文本編輯器 COSMACS 的開發(fā)者。
Java之父 James Gosling
在研究開發(fā)過程中,Gosling深刻體會(huì)到消費(fèi)類電子產(chǎn)品和工作站產(chǎn)品在開發(fā)哲學(xué)上的差異:消費(fèi)類電子產(chǎn)品要求可靠性高、費(fèi)用低、標(biāo)準(zhǔn)化、使用簡(jiǎn)單,用戶并不關(guān)心CPU的型號(hào),也不欣賞專用昂貴的RISC處理器,他們需要建立在一個(gè)標(biāo)準(zhǔn)基礎(chǔ)之上,具有一系列可選的方案,從8086到80586都可以選取。
為了使整個(gè)系統(tǒng)與平臺(tái)無關(guān),Gosling 首先從改寫C編譯器著手。但是Gosling在改寫過程中感到僅C是無法滿足需要的,于是在1991年6月份開始準(zhǔn)備開發(fā)一個(gè)新的語言,那么給它起一個(gè)什么名字呢?Gosling 回首向窗外望去,看見一棵老橡樹,于是建一個(gè)目錄叫Oak,這就是Java語言的前身(后來發(fā)現(xiàn)Oak已是Sun公司另一個(gè)語言的注冊(cè)商標(biāo),才改名為Java,即太平洋上一個(gè)盛產(chǎn)咖啡的島嶼的名字)。
Gosling 在開始寫 Java 時(shí),并不局限于擴(kuò)充語言機(jī)制本身,更注重于語言所運(yùn)行的軟硬件環(huán)境。他要建立一個(gè)系統(tǒng),這個(gè)系統(tǒng)運(yùn)行于一個(gè)巨大的、分布的、異構(gòu)的網(wǎng)格環(huán)境中,完成各電子設(shè)備之間的通信與協(xié)同工作。Gosling在設(shè)計(jì)中采用了虛機(jī)器碼(Virtual Machine Code)方式,即 Java 語言編譯后產(chǎn)生的是虛擬機(jī),虛擬機(jī)運(yùn)行在一個(gè)解釋器上,每一個(gè)操作系統(tǒng)均有一個(gè)解釋器。這樣一來,Java就成了平臺(tái)無關(guān)語言。這和Gosling設(shè)計(jì)的 SunNeWs窗口系統(tǒng)有著相同的技術(shù)味道。在NeWs中用戶界面統(tǒng)一用Postscript描述,不同的顯示器有不同的Postscript解釋器,這樣便保證了用戶界面的良好的可移植性。
Patrick Naughton 也是Sun公司的技術(shù)骨干,曾經(jīng)是 Open Windows 項(xiàng)目的負(fù)責(zé)人。當(dāng)Naughton加入該小組后,整個(gè)工作進(jìn)展神速。經(jīng)過17個(gè)月的奮戰(zhàn),整個(gè)系統(tǒng)勝利完成。它是由一個(gè)操作系統(tǒng)、一種語言(Java)、一個(gè)用戶界面、一個(gè)新的硬件平臺(tái)、三塊專用芯片構(gòu)成的。通常情況下,這樣的項(xiàng)目在Sun公司要75個(gè)人干三年。項(xiàng)目完成后,在 Sun公司內(nèi)部做了一次展示和鑒定,觀眾的反應(yīng)是:在各方面都采用了嶄新的、非常大膽的技術(shù)。許多參觀者對(duì)Java留下了非常深刻的印象,特別得到Sun 的兩位領(lǐng)導(dǎo)人 Scott McNealy 和 Bill Joy 的關(guān)注,但Java的前途未卜。
到了1994年,WWW已如火如荼地發(fā)展起來。Gosling意識(shí)到WWW需要一個(gè)中性的瀏覽器,它不依賴于任何硬件平臺(tái)和軟件平臺(tái),它應(yīng)是一種實(shí)時(shí)性較高、可靠安全、有交互功能的瀏覽器。于是Gosling決定用Java開發(fā)一個(gè)新的Web瀏覽器。
這項(xiàng)工作由 Naughton 和 Jonathan Payne 負(fù)責(zé),到1994年秋天,完成了WebRunner的開發(fā)工作。WebRunner是 HotJava的前身,這個(gè)原型系統(tǒng)展示了Java可能帶來的廣闊市場(chǎng)前景。WebRunner改名為HotJava,并于1995年5月23日發(fā)表后,在產(chǎn)業(yè)界引起了巨大的轟動(dòng),Java的地位也隨之而得到肯定。又經(jīng)過一年的試用和改進(jìn),Java1.0版終于在1996年年初正式發(fā)表。
Java雖出現(xiàn)的時(shí)間不長(zhǎng),但已被業(yè)界接受,IBM、Apple、DEC、Adobe、SiliconGraphics、HP、Oracle、 Toshiba、Netscap和Microsoft等大公司已經(jīng)購(gòu)買了Java的許可證。Microsoft還在其Web瀏覽器Explorer3.0 版中增加了對(duì)Java的支持。
另外,眾多的軟件開發(fā)商也開發(fā)了許多支持Java的軟件產(chǎn)品。如:Borland公司的基于Java的快速應(yīng)用程序開發(fā)環(huán)境Latte; Metrowerks公司和NaturalIntelligence公司分別開發(fā)的基于Machintosh的Java開發(fā)工具;Sun公司的Java開發(fā)環(huán)境JavaWorkshop;Microsoft也開發(fā)出系列Java產(chǎn)品。數(shù)據(jù)庫(kù)廠商如Illustra,Sybase,Versant, Oracle都在開發(fā)支持HTML和Java的CGI(CommonGatewayInterface)。在以網(wǎng)絡(luò)為中心的計(jì)算時(shí)代,不支持HTML和Java,就意味著應(yīng)用程序的應(yīng)用范圍只能限于同質(zhì)的環(huán)境。
Intranet正在成為企業(yè)信息系統(tǒng)最佳的解決方案。它的優(yōu)點(diǎn)表現(xiàn)在:便宜、易于使用和管理。用戶不管使用何種類型的機(jī)器和操作系統(tǒng),界面是統(tǒng)一的Web瀏覽器,而數(shù)據(jù)庫(kù)、Web頁面、應(yīng)用程序(用Java編的applet)則存在WWW服務(wù)器上。開發(fā)人員只需維護(hù)一個(gè)軟件版本,管理人員省去了為用戶安裝、升級(jí)、培訓(xùn)之苦,用戶則只需一個(gè)操作系統(tǒng),一個(gè)Internet瀏覽器足矣。
我們可以設(shè)想未來的計(jì)算方式,每個(gè)HomePage的實(shí)質(zhì)是一個(gè)多媒體應(yīng)用程序,這些程序用Java來開發(fā)。Java應(yīng)用程序運(yùn)行在異質(zhì)的機(jī)器、異質(zhì)的操作系統(tǒng)之上,甚至于電冰箱、烤面包箱、防盜電子設(shè)備之中,用Internet把所有的電子設(shè)備連接起來,通過TCP/IP進(jìn)行信息的交流。Java應(yīng)用程序之間既可以交換消息,也可以交換程序(一個(gè)Java的小應(yīng)用程序applet);蛟S有一天,我們可以在Netscape瀏覽器里查看電冰箱的溫度,向烤面包箱發(fā)一個(gè)電子郵件。
Java的出現(xiàn)是計(jì)算機(jī)信息交換的一個(gè)重要里程碑。在單機(jī)時(shí)代,程序進(jìn)程之間靠共享存儲(chǔ)進(jìn)行變量交換;在網(wǎng)絡(luò)時(shí)代,運(yùn)行在不同宿主機(jī)上的程序按網(wǎng)絡(luò)協(xié)議進(jìn)行無格式的消息(二進(jìn)制字符流)交換,消息的語義由交換程序雙方維護(hù);在Java時(shí)代,運(yùn)行在網(wǎng)絡(luò)上的程序進(jìn)程交換的是小應(yīng)用程序(applet)。小應(yīng)用程序是什么?它是一個(gè)對(duì)象,由一組屬性和方法構(gòu)成,是一個(gè)可執(zhí)行的實(shí)體;不僅有數(shù)據(jù)的狀態(tài),而且有定義在數(shù)據(jù)上的操作。未來可能進(jìn)行代表(Agent)交換,代理有一定的智能性,那便是信息交換的更高級(jí)階段。
隨著Internet的崛起、Java的誕生,巨型的、臃腫的應(yīng)用軟件開始向小型化發(fā)展,由眾多“生活”在Internet上的小應(yīng)用程序(applet)相互協(xié)作完成信息的處理與傳遞。Java會(huì)加速應(yīng)用軟件的小型化、網(wǎng)絡(luò)化的趨勢(shì)。隨著Internet的發(fā)展,軟件必然是面向“大眾”,而不是“少數(shù)人”的奢侈品,薄利多銷將是網(wǎng)絡(luò)應(yīng)用軟件的重要特點(diǎn)。分布式對(duì)象技術(shù)保證了用多少,下載多少。
Java連同Internet,WWW正在改變應(yīng)用軟件的開發(fā)和使用方式,一切都要圍繞著網(wǎng)絡(luò),圍繞著平臺(tái)無關(guān)。很多人認(rèn)為,Word,Excel等傳統(tǒng)的信息處理工具都必然走向萎縮,因?yàn)樗鼈兪菃螜C(jī)時(shí)代的產(chǎn)物。信息的價(jià)值在于使用和共享, Internet和Web是信息的使用和共享最快捷、最便宜的方式,Word將演化成為Web寫作工具,Excel則將演化成Web上的電子表格。
2.甲骨文(Oracle)將以74億美元收購(gòu)Sun
Oracle于2010年一月完成了對(duì)Sun微系統(tǒng)公司的收購(gòu),也因此取得了Sun旗下開源產(chǎn)品的所有權(quán),其中最為大家所熟知的就是Java、MySQL和Solaris了。
自O(shè)racle宣布其收購(gòu)Sun Microsystems的意圖以來,Java開發(fā)人員社區(qū)便開始爭(zhēng)辯Java格局會(huì)有哪些改變,以及它將如何影響Java平臺(tái)的未來。
事實(shí)上,Java 技術(shù)的發(fā)展素來就是一個(gè)充滿爭(zhēng)議的話題,其中一些人認(rèn)為這一技術(shù)在它的第15個(gè)年頭已經(jīng)走到了盡頭。因此,Java平臺(tái)和庫(kù)的突出復(fù)蘇讓業(yè)界為之震驚,因?yàn)槠髽I(yè)開發(fā)人員已經(jīng)開始解決方案可靠性和可伸縮性問題。
總的來說,Java平臺(tái)以穩(wěn)定著稱,其社區(qū)也是相當(dāng)活躍,但這并不意味著Java技術(shù)已經(jīng)足夠成熟。Oracle收購(gòu)Sun Microsystems就是Java行業(yè)重新定義過程中的最新變化。
不過事情的發(fā)展并不是一帆風(fēng)順的,甲骨文對(duì)Java的領(lǐng)導(dǎo)也遠(yuǎn)沒有事先預(yù)期的那么順利。4月9日,被稱為Java之父的James Gosling又在個(gè)人博客上宣布離開Oracle,這一事件更為Java的前景增加了一層迷霧。
而開源社區(qū)對(duì)待Java的態(tài)度也變得有些不一樣,在甲骨文成為Java的新主人之后,開源社區(qū)多多數(shù)聲音認(rèn)為,除了Sun以外,還有其它更多的力量在引導(dǎo)Java。Oracle雖然仍然可能是Java領(lǐng)域最強(qiáng)勢(shì)的角色,但它決不是唯一一個(gè)可以決定Java平臺(tái)未來的角色,甚至它也不是Java創(chuàng)新背后的主要貢獻(xiàn)力量。
這樣的爭(zhēng)執(zhí)在進(jìn)入5月份之后,一切開始變得明朗起來。首先是Oracle在Java的后續(xù)支持方面,宣布了一些列關(guān)于Java的相關(guān)計(jì)劃。然后是Java之父James Gosling繼聲明Java不會(huì)死去之后又盛贊Oracle對(duì)Java所做的貢獻(xiàn)。在Oracle的活動(dòng)發(fā)布網(wǎng)站上,連續(xù)發(fā)布了多個(gè)關(guān)于Java的推廣活動(dòng)。
這一切跡象表明,Oracle絕對(duì)不會(huì)輕易放棄Java這塊巨大的蛋糕,并且Oracle也開始逐漸學(xué)會(huì)了對(duì)開源社區(qū)的尊重。首先在JDK的商業(yè)版本方面,Oracle將會(huì)繼續(xù)深入挖掘Java的商業(yè)利益,與其固有產(chǎn)品進(jìn)行更深入的整合。在社區(qū)版本方面,Oracle將與Java開發(fā)者一起探討和研發(fā)Java的技術(shù)。
而以上的這些計(jì)劃首先在最近的Java圓桌會(huì)議上獲得了很好的執(zhí)行。隨著Oracle的收購(gòu)工作塵埃落定以及Java 7已定于今年下半年發(fā)布,Java領(lǐng)先社區(qū)需要舉辦一次圓桌會(huì)議—開發(fā)人員、架構(gòu)師和分析人員(公司和獨(dú)立) — 并獲取關(guān)于 Java 技術(shù)、文化和行業(yè)的當(dāng)前及最新趨勢(shì)的觀點(diǎn)。
除了Java之后,最讓甲骨文費(fèi)心的就屬M(fèi)ySQL了。去年對(duì)Sun的收購(gòu),甲骨文在費(fèi)盡了不少周折后終于順利的將一個(gè)潛在的對(duì)手MySQL收入囊中,開源社區(qū)大嘩,一時(shí)眾說紛紜,唱衰者有之、看好者也有之,但總體看來,憂慮的情緒在社區(qū)中彌散,數(shù)位MySQL創(chuàng)始人的“拯救”行動(dòng),更將MySQL的悲壯推向了高潮。由此,MySQL的發(fā)展前景受到各方的密切關(guān)注。
收購(gòu)細(xì)節(jié)
·根據(jù)協(xié)議,甲骨文將以每股9.5美元的價(jià)格收購(gòu)Sun,交易總價(jià)值約為74億美元。
·甲骨文將成為業(yè)界唯一一家提供綜合系統(tǒng)的廠商,系統(tǒng)的性能、可靠性和安全性將有所提高,而價(jià)格將會(huì)下滑。
·甲骨文獲得Sun兩項(xiàng)軟件資產(chǎn)——Java和Solaris,客戶將長(zhǎng)期受益。
·甲骨文將確保Java技術(shù)的創(chuàng)新和投資,使客戶和Java社區(qū)受益;收購(gòu)Sun后,甲骨文可以根據(jù)Solaris一些特有的高端功能優(yōu)化其數(shù)據(jù)庫(kù)軟件。
3.Java的不同版本
多數(shù)編程語言都有預(yù)選編譯好的類庫(kù)以支持各種特定的功能,在Java中,類庫(kù)以包(package)的形式提供,不同版本的Java提供不同的包,以面向特定的應(yīng)用。
Java2平臺(tái)包括標(biāo)準(zhǔn)版(J2SE)、企業(yè)版(J2EE)和微縮版(J2ME)三個(gè)版本:
J2SE就是Java2的標(biāo)準(zhǔn)版,主要用于桌面應(yīng)用軟件的編程;
J2ME主要應(yīng)用于嵌入是系統(tǒng)開發(fā),如手機(jī)和PDA的編程;
J2EE是Java2的企業(yè)版,主要用于分布式的網(wǎng)絡(luò)程序的開發(fā),如電子商務(wù)網(wǎng)站和ERP系統(tǒng)。
StandardEdition(標(biāo)準(zhǔn)版)J2SE包含那些構(gòu)成Java語言核心的類。比如:數(shù)據(jù)庫(kù)連接、接口定義、輸入/輸出、網(wǎng)絡(luò)編程
EnterpriseEdition(企業(yè)版)J2EE包含J2SE中的類,并且還包含用于開發(fā)企業(yè)級(jí)應(yīng)用的類。比如:EJB、servlet、JSP、XML、事務(wù)控制
MicroEdition(微縮版)J2ME包含J2SE中一部分類,用于消費(fèi)類電子產(chǎn)品的軟件開發(fā)。比如:呼機(jī)、智能卡、手機(jī)、PDA、機(jī)頂盒
他們的范圍是:J2SE包含于J2EE中,J2ME包含了J2SE的核心類,但新添加了一些專有類。
籠統(tǒng)的講,可以這樣理解:
J2SE是基礎(chǔ);
壓縮一點(diǎn),再增加一些CLDC等方面的特性就是J2ME;
擴(kuò)充一點(diǎn),再增加一些EJB等企業(yè)應(yīng)用方面的特性就是J2EE。
【Java語言的簡(jiǎn)介】相關(guān)文章:
java學(xué)習(xí)內(nèi)容簡(jiǎn)介08-22
java集合類基本簡(jiǎn)介10-26
Java 語言概述09-05
Java語言的優(yōu)點(diǎn)07-12
java語言基礎(chǔ)08-29
Java語言的基礎(chǔ)07-29
Java語言的歷史08-03
php語言簡(jiǎn)介08-25