新聞中心
1.概述
Java 是由 Sun Microsystems
公司于1995年5月推出的 Java 面向?qū)ο蟪绦蛟O(shè)計語言和 Java 平臺的總稱。由 James Gosling
和同事們共同研發(fā),并在1995年正式推出。
Java 分為三個體系:
- JavaSE(J2SE): Java2 Platform Standard Edition,Java平臺標準版
- 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。
2.主要特性
簡單
Java 語言的語法與 C
語言和 C++
語言很接近,使得大多數(shù)程序員很容易學(xué)習(xí)和使用。另一方面,Java 丟棄了 C++
中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動的強制類型轉(zhuǎn)換。特別地,Java 語言不使用指針,而使用引用。并提供了自動的垃圾回收,使得程序員不必為內(nèi)存管理而擔憂。
面向?qū)ο?/h4>
Java 語言提供類、接口和繼承等面向?qū)ο蟮奶匦?,為了簡單起見,只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實現(xiàn)機制(關(guān)鍵字為 implements
)。Java 語言全面支持動態(tài)綁定,而 C++
語言只對虛函數(shù)使用動態(tài)綁定。總之,Java 語言是一個純的面向?qū)ο蟪绦蛟O(shè)計語言。
分布式
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
(遠程方法激活)機制也是開發(fā)分布式應(yīng)用的重要手段。
健壯
Java 的強類型機制、異常處理、垃圾的自動收集等是 Java 程序健壯性的重要保證。對指針的丟棄是 Java 的明智選擇。Java的安全檢查機制使得 Java 更具健壯性。
安全
Java 通常被用在網(wǎng)絡(luò)環(huán)境中,為此,Java 提供了一個安全機制以防惡意代碼的***。除了 Java 語言具有的許多安全特性以外,Java 對通過網(wǎng)絡(luò)下載的類具有一個安全防范機制(類 ClassLoader
),如分配不同的名字空間以防替代本地的同名類、字節(jié)代碼檢查,并提供安全管理機制(類 SecurityManager
)讓 Java 應(yīng)用設(shè)置安全哨兵。
體系結(jié)構(gòu)
Java 程序(后綴為 .java
的文件)在 Java 平臺上被編譯為體系結(jié)構(gòu)中立的字節(jié)碼格式(后綴為 .class
的文件),然后可以在實現(xiàn)這個 Java 平臺的任何系統(tǒng)中運行。這種途徑適合于異構(gòu)的網(wǎng)絡(luò)環(huán)境和軟件的分發(fā)。
可移植
這種可移植性來源于體系結(jié)構(gòu)中立性,另外,Java 還嚴格規(guī)定了各個基本數(shù)據(jù)類型的長度。Java 系統(tǒng)本身也具有很強的可移植性,Java 編譯器是用Java 實現(xiàn)的,Java 的運行環(huán)境是用 ANSI C
實現(xiàn)的。
解釋型
如前所述,Java 程序在 Java 平臺上被編譯為字節(jié)碼格式,然后可以在實現(xiàn)這個 Java 平臺的任何系統(tǒng)中運行。在運行時,Java 平臺中的 Java 解釋器對這些字節(jié)碼進行解釋執(zhí)行,執(zhí)行過程中需要的類在聯(lián)接階段被載入到運行環(huán)境中。
高性能
與那些解釋型的高級腳本語言相比,Java 的確是高性能的。事實上,Java 的運行速度隨著 JIT(Just-In-Time)
編譯器技術(shù)的發(fā)展越來越接近于 C++
。
多線程
在 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í)行,并提供多線程之間的同步機制(關(guān)鍵字為 synchronized
)。
動態(tài)
Java 語言的設(shè)計目標之一是適應(yīng)于動態(tài)變化的環(huán)境。Java 程序需要的類能夠動態(tài)地被載入到運行環(huán)境,也可以通過網(wǎng)絡(luò)來載入所需要的類。這也有利于軟件的升級。另外,Java 中的類有一個運行時刻的表示,能進行運行時刻的類型檢查。
3.發(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)當時全球同類會議規(guī)模之紀錄
- 1997年9月,JavaDeveloperConnection社區(qū)成員超過十萬
- 1998年2月,JDK1.1被下載超過2,000,000次
- 1998年12月8日,JAVA2企業(yè)平臺J2EE發(fā)布
- 1999年6月,SUN公司發(fā)布Java的三個版本:標準版(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的手機
- 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。
- 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ā)布
4.開發(fā)工具
作為一名 Java 程序開發(fā)人員,可以的選擇集成開發(fā)環(huán)境 IDE(Integrated Development Environment)
非常多,這得益于 Java 是一門開源語言。
- 有開源免費的
- 有商用收費的
如何選擇一款適合自己的集成開發(fā)環(huán)境,亦或說選擇一款符合自己項目開發(fā)需要的集成開發(fā)環(huán)境,如果選擇得當,那么就能夠使得開發(fā)工作事半功倍;否則事倍功半。
免費開源Eclipse
Eclipse
最初是由 IBM
公司開發(fā)的替代商業(yè)軟件 Visual Age for Java
的下一代 IDE
開發(fā)環(huán)境,2001年11月貢獻給開源社區(qū),現(xiàn)在它由非營利軟件供應(yīng)商聯(lián)盟 Eclipse
基金會(Eclipse Foundation)管理。Eclipse
是一個開放源代碼的、基于 Java 的可擴展開發(fā)平臺。就其本身而言,它只是一個框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運的是 Eclipse
附帶了一個標準的插件集,包括 Java 開發(fā)工具(Java Development Tools,JDT
)。
Eclipse
是著名的跨平臺的自由集成開發(fā)環(huán)境(IDE
)。最初主要用來 Java 語言開發(fā),但是目前亦有人通過插件使其作為其他計算機語言比如 C++
、PHP
、Python
等語言的開發(fā)工具。Eclipse
的本身只是一個框架平臺,但是眾多插件的支持使得 Eclipse
擁有其他功能相對固定的IDE軟件很難具有的靈活性。許多軟件開發(fā)商以 Eclipse
為框架開發(fā)自己的 IDE
。
商用收費MyEclipse
MyEclipse
是 Eclipse
的插件,也是一款功能強大的 J2EE 集成開發(fā)環(huán)境,由 Genuitec
公司發(fā)布,它是商用收費的。
MyEclipse
是對 Eclipse
IDE
的擴展,利用它可以在數(shù)據(jù)庫和 JavaEE 的開發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的 JavaEE 集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測試和發(fā)布功能,完整支持HTML
、Struts
、JSP
、CSS
、Javascript
、SQL
,Hibernate
,Spring
。
Oracle公司免費的NetBeans
NetBeans
是Sun公司(2009年被甲骨文收購)在2000年創(chuàng)立的開放源代碼的面向開發(fā)人員和客戶社區(qū)的集成開發(fā)環(huán)境,旨在構(gòu)建世界級的 Java IDE。
NetBeans
當前可以在Solaris
、Windows
、Linux
和Macintosh OS X
平臺上進行開發(fā),并在SPL
(Sun公用許可)范圍內(nèi)使用,是一個屢獲殊榮的集成開發(fā)環(huán)境。NetBeans
包括開源的開發(fā)環(huán)境和應(yīng)用平臺,NetBeans IDE
可以使開發(fā)人員利用 Java 平臺能夠快速創(chuàng)建Web
、企業(yè)
、桌面
以及移動應(yīng)用程序
,NetBeans IDE
目前支持PHP
、Ruby
、JavaScript
、Ajax
、Groovy
、Grails
和C
/C++
等開發(fā)語言。
NetBeans
項目由一個活躍的開發(fā)社區(qū)提供支持, NetBean
開發(fā)環(huán)境提供了豐富的產(chǎn)品文檔和培訓(xùn)資源以及大量的第三方插件。
IntelliJ IDEA
IntelliJ IDEA
是一款綜合的 Java 編程環(huán)境,被許多開發(fā)人員和行業(yè)專家譽為市場上最好的 IDE
。
它提供了一系列最實用的的工具組合:
- 智能編碼輔助和自動控制
- 支持
J2EE
,Ant
,JUnit
,SVN
和Git
集成 - 非平行的編碼檢查和創(chuàng)新的
GUI
設(shè)計器
IDEA
把 Java 開發(fā)人員從一些耗時的常規(guī)工作中解放出來,顯著地提高了開發(fā)效率。具有運行更快速,生成更好的代碼;持續(xù)的重新設(shè)計和日常編碼變得更加簡易,與其它工具的完美集成;很高的性價比等特點。
IntelliJ IDEA
是收費軟件,在2009年推出了免費的社區(qū)開源版本,不過商用還是需要收費的。
作為一個資深的 Java 開發(fā)工程師,我負責任的向大家推薦
IntelliJ IDEA
作為開發(fā)工具,理由不必細說,誰用誰知道!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
網(wǎng)站名稱:Java的特性和開發(fā)工具的介紹-創(chuàng)新互聯(lián)
文章源于:http://fisionsoft.com.cn/article/cespdo.html