Java基礎(chǔ)01-Java簡介

概述

Java是由Sun Microsystems公司于1995年5月推出的Java面向?qū)ο蟪绦蛟O(shè)計語言和Java平臺的總稱。由James Gosling和同事們共同研發(fā)共耍,并在1995年正式推出。
Java分為三個體系:

  • JavaSE(J2SE)(Java2 Platform Standard Edition绩社,java平臺標(biāo)準(zhǔn)版)
  • JavaEE(J2EE)(Java 2 Platform,Enterprise Edition者春,java平臺企業(yè)版)
  • JavaME(J2ME)(Java 2 Platform Micro Edition膘侮,java平臺微型版)。

2005年6月玩徊,JavaOne大會召開租悄,SUN公司公開Java SE 6。此時恩袱,Java的各種版本已經(jīng)更名以取消其中的數(shù)字"2":J2EE更名為Java EE, J2SE更名為Java SE泣棋,J2ME更名為Java ME。

主要特性

  • Java語言是簡單的
    Java語言的語法與C語言和C++語言很接近畔塔,使得大多數(shù)程序員很容易學(xué)習(xí)和使用潭辈。另一方面,Java丟棄了C++中很少使用的俩檬、很難理解的萎胰、令人迷惑的那些特性,如操作符重載棚辽、多繼承技竟、自動的強(qiáng)制類型轉(zhuǎn)換。特別地屈藐,Java語言不使用指針榔组,而是引用。并提供了自動的廢料收集联逻,使得程序員不必為內(nèi)存管理而擔(dān)憂搓扯。
  • Java語言是面向?qū)ο蟮?/strong>
    Java語言提供類、接口和繼承等面向?qū)ο蟮奶匦园椋瑸榱撕唵纹鹨娤峭疲恢С诸愔g的單繼承,但支持接口之間的多繼承公壤,并支持類與接口之間的實現(xiàn)機(jī)制(關(guān)鍵字為implements)换可。Java語言全面支持動態(tài)綁定,而C++語言只對虛函數(shù)使用動態(tài)綁定厦幅≌傣總之,Java語言是一個純的面向?qū)ο蟪绦蛟O(shè)計語言确憨。
  • Java語言是分布式的
    Java語言支持Internet應(yīng)用的開發(fā)译荞,在基本的Java應(yīng)用編程接口中有一個網(wǎng)絡(luò)應(yīng)用編程接口(java net)瓤的,它提供了用于網(wǎng)絡(luò)應(yīng)用編程的類庫,包括URL吞歼、URLConnection圈膏、Socket、ServerSocket等篙骡。Java的RMI(遠(yuǎn)程方法激活)機(jī)制也是開發(fā)分布式應(yīng)用的重要手段本辐。
  • Java語言是健壯的
    Java的強(qiáng)類型機(jī)制、異常處理医增、垃圾的自動收集等是Java程序健壯性的重要保證慎皱。對指針的丟棄是Java的明智選擇。Java的安全檢查機(jī)制使得Java更具健壯性叶骨。
  • Java語言是安全的
    Java通常被用在網(wǎng)絡(luò)環(huán)境中茫多,為此,Java提供了一個安全機(jī)制以防惡意代碼的攻擊忽刽。除了Java語言具有的許多安全特性以外天揖,Java對通過網(wǎng)絡(luò)下載的類具有一個安全防范機(jī)制(類ClassLoader),如分配不同的名字空間以防替代本地的同名類跪帝、字節(jié)代碼檢查今膊,并提供安全管理機(jī)制(類SecurityManager)讓Java應(yīng)用設(shè)置安全哨兵。
  • Java語言是體系結(jié)構(gòu)中立的
    Java程序(后綴為java的文件)在Java平臺上被編譯為體系結(jié)構(gòu)中立的字節(jié)碼格式(后綴為class的文件)伞剑,然后可以在實現(xiàn)這個Java平臺的任何系統(tǒng)中運行斑唬。這種途徑適合于異構(gòu)的網(wǎng)絡(luò)環(huán)境和軟件的分發(fā)。
  • Java語言是可移植的
    這種可移植性來源于體系結(jié)構(gòu)中立性黎泣,另外恕刘,Java還嚴(yán)格規(guī)定了各個基本數(shù)據(jù)類型的長度。Java系統(tǒng)本身也具有很強(qiáng)的可移植性抒倚,Java編譯器是用Java實現(xiàn)的褐着,Java的運行環(huán)境是用ANSI C實現(xiàn)的。
  • Java語言是解釋型的
    如前所述托呕,Java程序在Java平臺上被編譯為字節(jié)碼格式含蓉,然后可以在實現(xiàn)這個Java平臺的任何系統(tǒng)中運行。在運行時项郊,Java平臺中的Java解釋器對這些字節(jié)碼進(jìn)行解釋執(zhí)行馅扣,執(zhí)行過程中需要的類在聯(lián)接階段被載入到運行環(huán)境中。
  • Java是高性能的
    與那些解釋型的高級腳本語言相比呆抑,Java的確是高性能的岂嗓。事實上汁展,Java的運行速度隨著JIT(Just-In-Time)編譯器技術(shù)的發(fā)展越來越接近于C++鹊碍。
  • Java語言是多線程的
    在Java語言中厌殉,線程是一種特殊的對象,它必須由Thread類或其子(孫)類來創(chuàng)建侈咕。通常有兩種方法來創(chuàng)建線程:其一公罕,使用型構(gòu)為Thread(Runnable)的構(gòu)造子類將一個實現(xiàn)了Runnable接口的對象包裝成一個線程,其二耀销,從Thread類派生出子類并重寫run方法楼眷,使用該子類創(chuàng)建的對象即為線程。值得注意的是Thread類已經(jīng)實現(xiàn)了Runnable接口熊尉,因此罐柳,任何一個線程均有它的run方法,而run方法中包含了線程所要運行的代碼狰住。線程的活動由一組方法來控制张吉。Java語言支持多個線程的同時執(zhí)行,并提供多線程之間的同步機(jī)制(關(guān)鍵字為synchronized)催植。
  • Java語言是動態(tài)的
    Java語言的設(shè)計目標(biāo)之一是適應(yīng)于動態(tài)變化的環(huán)境肮蛹。Java程序需要的類能夠動態(tài)地被載入到運行環(huán)境,也可以通過網(wǎng)絡(luò)來載入所需要的類创南。這也有利于軟件的升級伦忠。另外,Java中的類有一個運行時刻的表示稿辙,能進(jìn)行運行時刻的類型檢查昆码。

發(fā)展史

  • 1995年5月23日,Java語言誕生
  • 1996年1月邻储,第一個JDK-JDK1.0誕生
  • 1996年4月未桥,10個最主要的操作系統(tǒng)供應(yīng)商申明將在其產(chǎn)品中嵌入JAVA技術(shù)
  • 1996年9月,約8.3萬個網(wǎng)頁應(yīng)用了JAVA技術(shù)來制作
  • 1997年2月18日芥备,JDK1.1發(fā)布
  • 1997年4月2日冬耿,JavaOne會議召開,參與者逾一萬人萌壳,創(chuàng)當(dāng)時全球同類會議規(guī)模之紀(jì)錄
  • 1997年9月亦镶,JavaDeveloperConnection社區(qū)成員超過十萬
  • 1998年2月,JDK1.1被下載超過2,000,000次
  • 1998年12月8日袱瓮,JAVA2企業(yè)平臺J2EE發(fā)布
  • 1999年6月缤骨,SUN公司發(fā)布Java的三個版本:標(biāo)準(zhǔn)版(JavaSE,以前是J2SE)、企業(yè)版(JavaEE以前是J2EE)和微型版(JavaME尺借,以前是J2ME)
  • 2000年5月8日绊起,JDK1.3發(fā)布
  • 2000年5月29日,JDK1.4發(fā)布
  • 2001年6月5日燎斩,NOKIA宣布虱歪,到2003年將出售1億部支持Java的手機(jī)
  • 2001年9月24日蜂绎,J2EE1.3發(fā)布
  • 2002年2月26日,J2SE1.4發(fā)布笋鄙,自此Java的計算能力有了大幅提升
  • 2004年9月30日18:00PM师枣,J2SE1.5發(fā)布,成為Java語言發(fā)展史上的又一里程碑萧落。為了表示該版本的重要性践美,J2SE1.5更名為Java SE 5.0
  • 2005年6月,JavaOne大會召開找岖,SUN公司公開Java SE 6陨倡。此時,Java的各種版本已經(jīng)更名许布,以取消其中的數(shù)字"2":J2EE更名為Java EE玫膀,J2SE更名為Java SE,J2ME更名為Java ME
  • 2006年12月爹脾,SUN公司發(fā)布JRE6.0
  • 2009年04月20日帖旨,甲骨文74億美元收購Sun。取得java的版權(quán)灵妨。
  • 2010年11月解阅,由于甲骨文對于Java社區(qū)的不友善,因此Apache揚言將退出JCP[4]泌霍。
  • 2011年7月28日货抄,甲骨文發(fā)布 Java7.0 的正式版。
  • 2014年3月18日朱转,Oracle公司發(fā)表 Java SE 8蟹地。
  • 2017年9月21日,Oracle公司發(fā)表 Java SE 9
  • 2018年3月21日藤为,Oracle公司發(fā)表 Java SE 10
  • 2018年9月25日怪与,Java SE 11 發(fā)布
  • 2019年3月20日,Java SE 12 發(fā)布
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末缅疟,一起剝皮案震驚了整個濱河市分别,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌存淫,老刑警劉巖耘斩,帶你破解...
    沈念sama閱讀 218,036評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異桅咆,居然都是意外死亡括授,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來荚虚,“玉大人薛夜,你說我怎么就攤上這事∏埽” “怎么了?”我有些...
    開封第一講書人閱讀 164,411評論 0 354
  • 文/不壞的土叔 我叫張陵硕糊,是天一觀的道長院水。 經(jīng)常有香客問我,道長简十,這世上最難降的妖魔是什么檬某? 我笑而不...
    開封第一講書人閱讀 58,622評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮螟蝙,結(jié)果婚禮上恢恼,老公的妹妹穿的比我還像新娘。我一直安慰自己胰默,他們只是感情好场斑,可當(dāng)我...
    茶點故事閱讀 67,661評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著牵署,像睡著了一般漏隐。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上奴迅,一...
    開封第一講書人閱讀 51,521評論 1 304
  • 那天青责,我揣著相機(jī)與錄音,去河邊找鬼取具。 笑死脖隶,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的暇检。 我是一名探鬼主播产阱,決...
    沈念sama閱讀 40,288評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼块仆!你這毒婦竟也來了心墅?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,200評論 0 276
  • 序言:老撾萬榮一對情侶失蹤榨乎,失蹤者是張志新(化名)和其女友劉穎怎燥,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蜜暑,經(jīng)...
    沈念sama閱讀 45,644評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡铐姚,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,837評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片隐绵。...
    茶點故事閱讀 39,953評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡之众,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出依许,到底是詐尸還是另有隱情棺禾,我是刑警寧澤,帶...
    沈念sama閱讀 35,673評論 5 346
  • 正文 年R本政府宣布峭跳,位于F島的核電站膘婶,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏蛀醉。R本人自食惡果不足惜悬襟,卻給世界環(huán)境...
    茶點故事閱讀 41,281評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望拯刁。 院中可真熱鬧脊岳,春花似錦、人聲如沸垛玻。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽帚桩。三九已至棺牧,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間朗儒,已是汗流浹背颊乘。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留醉锄,地道東北人乏悄。 一個月前我還...
    沈念sama閱讀 48,119評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像恳不,于是被迫代替她去往敵國和親檩小。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,901評論 2 355

推薦閱讀更多精彩內(nèi)容