資料來源 :
Java-百度百科
Java教程-菜鳥教程
簡(jiǎn)介
??Java是一門面向?qū)ο缶幊陶Z言消痛,不僅吸收了C++語言的各種優(yōu)點(diǎn),還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強(qiáng)大和簡(jiǎn)單易用兩個(gè)特征肤无。Java語言作為靜態(tài)面向?qū)ο缶幊陶Z言的代表,極好地實(shí)現(xiàn)了面向?qū)ο罄碚摵眨试S程序員以優(yōu)雅的思維方式進(jìn)行復(fù)雜的編程宛渐。 Java具有簡(jiǎn)單性、面向?qū)ο竺写睢⒎植际娇妗⒔研浴踩粤巯伞⑵脚_(tái)獨(dú)立與可移植性鳍烁、多線程、動(dòng)態(tài)性等特點(diǎn)繁扎。Java可以編寫桌面應(yīng)用程序、Web應(yīng)用程序糊闽、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序等梳玫。
??Java是由Sun Microsystems公司于1995年5月推出的Java面向?qū)ο蟪绦蛟O(shè)計(jì)語言和Java平臺(tái)的總稱。由James Gosling和同事們共同研發(fā)右犹,并在1995年正式推出提澎。
Java分為三個(gè)體系:
- JavaSE(J2SE)(Java2 Platform Standard Edition,java平臺(tái)標(biāo)準(zhǔn)版)
- JavaEE(J2EE)(Java 2 Platform,Enterprise Edition念链,java平臺(tái)企業(yè)版)
- JavaME(J2ME)(Java 2 Platform Micro Edition盼忌,java平臺(tái)微型版)积糯。
??2005年6月,JavaOne大會(huì)召開谦纱,SUN公司公開Java SE 6看成。此時(shí),Java的各種版本已經(jīng)更名以取消其中的數(shù)字"2":J2EE更名為Java EE, J2SE更名為Java SE跨嘉,J2ME更名為Java ME川慌。
主要特性
-
Java語言是簡(jiǎn)單的:
Java語言的語法與C語言和C++語言很接近,使得大多數(shù)程序員很容易學(xué)習(xí)和使用祠乃。另一方面梦重,Java丟棄了C++中很少使用的、很難理解的亮瓷、令人迷惑的那些特性琴拧,如操作符重載、多繼承嘱支、自動(dòng)的強(qiáng)制類型轉(zhuǎn)換蚓胸。特別地,Java語言不使用指針斗塘,而是引用赢织。并提供了自動(dòng)的廢料收集,使得程序員不必為內(nèi)存管理而擔(dān)憂馍盟。 - Java語言是面向?qū)ο蟮?
Java語言提供類于置、接口和繼承等面向?qū)ο蟮奶匦裕瑸榱撕?jiǎn)單起見贞岭,只支持類之間的單繼承八毯,但支持接口之間的多繼承,并支持類與接口之間的實(shí)現(xiàn)機(jī)制(關(guān)鍵字為implements)瞄桨。Java語言全面支持動(dòng)態(tài)綁定话速,而C++語言只對(duì)虛函數(shù)使用動(dòng)態(tài)綁定⌒窘模總之泊交,Java語言是一個(gè)純的面向?qū)ο蟪绦蛟O(shè)計(jì)語言。
Java語言是分布式的:
Java語言支持Internet應(yīng)用的開發(fā)柱查,在基本的Java應(yīng)用編程接口中有一個(gè)網(wǎng)絡(luò)應(yīng)用編程接口(java net)廓俭,它提供了用于網(wǎng)絡(luò)應(yīng)用編程的類庫(kù),包括URL唉工、URLConnection研乒、Socket、ServerSocket等淋硝。Java的RMI(遠(yuǎn)程方法激活)機(jī)制也是開發(fā)分布式應(yīng)用的重要手段雹熬。Java語言是健壯的:
Java的強(qiáng)類型機(jī)制宽菜、異常處理、垃圾的自動(dòng)收集等是Java程序健壯性的重要保證竿报。對(duì)指針的丟棄是Java的明智選擇铅乡。Java的安全檢查機(jī)制使得Java更具健壯性。Java語言是安全的:
Java通常被用在網(wǎng)絡(luò)環(huán)境中仰楚,為此隆判,Java提供了一個(gè)安全機(jī)制以防惡意代碼的攻擊。除了Java語言具有的許多安全特性以外僧界,Java對(duì)通過網(wǎng)絡(luò)下載的類具有一個(gè)安全防范機(jī)制(類ClassLoader)侨嘀,如分配不同的名字空間以防替代本地的同名類、字節(jié)代碼檢查捂襟,并提供安全管理機(jī)制(類SecurityManager)讓Java應(yīng)用設(shè)置安全哨兵咬腕。Java語言是體系結(jié)構(gòu)中立的:
Java程序(后綴為java的文件)在Java平臺(tái)上被編譯為體系結(jié)構(gòu)中立的字節(jié)碼格式(后綴為class的文件),然后可以在實(shí)現(xiàn)這個(gè)Java平臺(tái)的任何系統(tǒng)中運(yùn)行葬荷。這種途徑適合于異構(gòu)的網(wǎng)絡(luò)環(huán)境和軟件的分發(fā)涨共。Java語言是可移植的:
這種可移植性來源于體系結(jié)構(gòu)中立性,另外宠漩,Java還嚴(yán)格規(guī)定了各個(gè)基本數(shù)據(jù)類型的長(zhǎng)度举反。Java系統(tǒng)本身也具有很強(qiáng)的可移植性,Java編譯器是用Java實(shí)現(xiàn)的扒吁,Java的運(yùn)行環(huán)境是用ANSI C實(shí)現(xiàn)的火鼻。Java語言是解釋型的:
如前所述,Java程序在Java平臺(tái)上被編譯為字節(jié)碼格式雕崩,然后可以在實(shí)現(xiàn)這個(gè)Java平臺(tái)的任何系統(tǒng)中運(yùn)行魁索。在運(yùn)行時(shí),Java平臺(tái)中的Java解釋器對(duì)這些字節(jié)碼進(jìn)行解釋執(zhí)行盼铁,執(zhí)行過程中需要的類在聯(lián)接階段被載入到運(yùn)行環(huán)境中粗蔚。Java是高性能的:
與那些解釋型的高級(jí)腳本語言相比,Java的確是高性能的饶火。事實(shí)上鹏控,Java的運(yùn)行速度隨著JIT(Just-In-Time)編譯器技術(shù)的發(fā)展越來越接近于C++。Java語言是多線程的:
在Java語言中肤寝,線程是一種特殊的對(duì)象牧挣,它必須由Thread類或其子(孫)類來創(chuàng)建。通常有兩種方法來創(chuàng)建線程:其一醒陆,使用型構(gòu)為Thread(Runnable)的構(gòu)造子類將一個(gè)實(shí)現(xiàn)了Runnable接口的對(duì)象包裝成一個(gè)線程,其二裆针,從Thread類派生出子類并重寫run方法刨摩,使用該子類創(chuàng)建的對(duì)象即為線程寺晌。值得注意的是Thread類已經(jīng)實(shí)現(xiàn)了Runnable接口,因此澡刹,任何一個(gè)線程均有它的run方法呻征,而run方法中包含了線程所要運(yùn)行的代碼。線程的活動(dòng)由一組方法來控制罢浇。Java語言支持多個(gè)線程的同時(shí)執(zhí)行陆赋,并提供多線程之間的同步機(jī)制(關(guān)鍵字為synchronized)。Java語言是動(dòng)態(tài)的:
Java語言的設(shè)計(jì)目標(biāo)之一是適應(yīng)于動(dòng)態(tài)變化的環(huán)境嚷闭。Java程序需要的類能夠動(dòng)態(tài)地被載入到運(yùn)行環(huán)境攒岛,也可以通過網(wǎng)絡(luò)來載入所需要的類。這也有利于軟件的升級(jí)胞锰。另外灾锯,Java中的類有一個(gè)運(yùn)行時(shí)刻的表示,能進(jìn)行運(yùn)行時(shí)刻的類型檢查嗅榕。
發(fā)展歷史
- 1995年5月23日顺饮,Java語言誕生
- 1996年1月,第一個(gè)JDK-JDK1.0誕生
- 1996年4月凌那,10個(gè)最主要的操作系統(tǒng)供應(yīng)商申明將在其產(chǎn)品中嵌入JAVA技術(shù)
- 1996年9月兼雄,約8.3萬個(gè)網(wǎng)頁(yè)應(yīng)用了JAVA技術(shù)來制作
- 1997年2月18日,JDK1.1發(fā)布
- 1997年4月2日帽蝶,JavaOne會(huì)議召開赦肋,參與者逾一萬人,創(chuàng)當(dāng)時(shí)全球同類會(huì)議規(guī)模之紀(jì)錄
- 1997年9月嘲碱,JavaDeveloperConnection社區(qū)成員超過十萬
- 1998年2月金砍,JDK1.1被下載超過2,000,000次
- 1998年12月8日,JAVA2企業(yè)平臺(tái)J2EE發(fā)布
- 1999年6月麦锯,SUN公司發(fā)布Java的三個(gè)版本:標(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的計(jì)算能力有了大幅提升
- 2004年9月30日18:00PM敛苇,J2SE1.5發(fā)布,成為Java語言發(fā)展史上的又一里程碑顺呕。為了表示該版本的重要性枫攀,J2SE1.5更名為Java SE 5.0
- 2005年6月括饶,JavaOne大會(huì)召開,SUN公司公開Java SE 6来涨。此時(shí)图焰,Java的各種版本已經(jīng)更名,以取消其中的數(shù)字"2":J2EE更名為Java EE蹦掐,J2SE更名為Java SE技羔,J2ME更名為Java ME
- 2006年12月,SUN公司發(fā)布JRE6.0
- 2009年04月20日卧抗,甲骨文74億美元收購(gòu)Sun藤滥。取得java的版權(quán)。
- 2010年11月颗味,由于甲骨文對(duì)于Java社區(qū)的不友善超陆,因此Apache揚(yáng)言將退出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ā)布
Java開發(fā)工具
Java語言盡量保證系統(tǒng)內(nèi)存在1G以上,其他工具如下所示:
- Linux 系統(tǒng)币他、Mac OS 系統(tǒng)坞靶、Windows 95/98/2000/XP,WIN 7/8系統(tǒng)蝴悉。
- Java JDK 7彰阴、8……
- Notepad 編輯器或者其他編輯器。
- IDE:Eclipse拍冠、 Intellij IDEA
安裝好以上的工具后尿这,我們就可以輸出Java的第一個(gè)程序"Hello World!"
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
以上就是Java的簡(jiǎn)介庆杜。