您好,登錄后才能下訂單哦!
1.概述
Java 是由 Sun Microsystems
公司于1995年5月推出的 Java 面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言和 Java 平臺(tái)的總稱。由 James Gosling
和同事們共同研發(fā),并在1995年正式推出。
Java 分為三個(gè)體系:
2005年6月,JavaOne 大會(huì)召開,Sun 公司公開 Java SE 6。此時(shí),Java 的各種版本已經(jīng)更名以取消其中的數(shù)字"2":J2EE更名為Java EE, J2SE更名為Java SE,J2ME更名為Java ME。
Java 語(yǔ)言的語(yǔ)法與 C
語(yǔ)言和 C++
語(yǔ)言很接近,使得大多數(shù)程序員很容易學(xué)習(xí)和使用。另一方面,Java 丟棄了 C++
中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動(dòng)的強(qiáng)制類型轉(zhuǎn)換。特別地,Java 語(yǔ)言不使用指針,而使用引用。并提供了自動(dòng)的垃圾回收,使得程序員不必為內(nèi)存管理而擔(dān)憂。
Java 語(yǔ)言提供類、接口和繼承等面向?qū)ο蟮奶匦?,為了?jiǎn)單起見(jiàn),只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實(shí)現(xiàn)機(jī)制(關(guān)鍵字為 implements
)。Java 語(yǔ)言全面支持動(dòng)態(tài)綁定,而 C++
語(yǔ)言只對(duì)虛函數(shù)使用動(dòng)態(tài)綁定??傊琂ava 語(yǔ)言是一個(gè)純的面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言。
Java 語(yǔ)言支持 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 的強(qiáng)類型機(jī)制、異常處理、垃圾的自動(dòng)收集等是 Java 程序健壯性的重要保證。對(duì)指針的丟棄是 Java 的明智選擇。Java的安全檢查機(jī)制使得 Java 更具健壯性。
Java 通常被用在網(wǎng)絡(luò)環(huán)境中,為此,Java 提供了一個(gè)安全機(jī)制以防惡意代碼的***。除了 Java 語(yǔ)言具有的許多安全特性以外,Java 對(duì)通過(guò)網(wǎng)絡(luò)下載的類具有一個(gè)安全防范機(jī)制(類 ClassLoader
),如分配不同的名字空間以防替代本地的同名類、字節(jié)代碼檢查,并提供安全管理機(jī)制(類 SecurityManager
)讓 Java 應(yīng)用設(shè)置安全哨兵。
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ā)。
這種可移植性來(lái)源于體系結(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 平臺(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í)行過(guò)程中需要的類在聯(lián)接階段被載入到運(yùn)行環(huán)境中。
與那些解釋型的高級(jí)腳本語(yǔ)言相比,Java 的確是高性能的。事實(shí)上,Java 的運(yùn)行速度隨著 JIT(Just-In-Time)
編譯器技術(shù)的發(fā)展越來(lái)越接近于 C++
。
在 Java 語(yǔ)言中,線程是一種特殊的對(duì)象,它必須由 Thread
類或其子(孫)類來(lái)創(chuàng)建。通常有兩種方法來(lái)創(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)由一組方法來(lái)控制。Java 語(yǔ)言支持多個(gè)線程的同時(shí)執(zhí)行,并提供多線程之間的同步機(jī)制(關(guān)鍵字為 synchronized
)。
Java 語(yǔ)言的設(shè)計(jì)目標(biāo)之一是適應(yīng)于動(dòng)態(tài)變化的環(huán)境。Java 程序需要的類能夠動(dòng)態(tài)地被載入到運(yùn)行環(huán)境,也可以通過(guò)網(wǎng)絡(luò)來(lái)載入所需要的類。這也有利于軟件的升級(jí)。另外,Java 中的類有一個(gè)運(yùn)行時(shí)刻的表示,能進(jìn)行運(yùn)行時(shí)刻的類型檢查。
作為一名 Java 程序開發(fā)人員,可以的選擇集成開發(fā)環(huán)境 IDE(Integrated Development Environment)
非常多,這得益于 Java 是一門開源語(yǔ)言。
如何選擇一款適合自己的集成開發(fā)環(huán)境,亦或說(shuō)選擇一款符合自己項(xiàng)目開發(fā)需要的集成開發(fā)環(huán)境,如果選擇得當(dāng),那么就能夠使得開發(fā)工作事半功倍;否則事倍功半。
Eclipse
最初是由 IBM
公司開發(fā)的替代商業(yè)軟件 Visual Age for Java
的下一代 IDE
開發(fā)環(huán)境,2001年11月貢獻(xiàn)給開源社區(qū),現(xiàn)在它由非營(yíng)利軟件供應(yīng)商聯(lián)盟 Eclipse
基金會(huì)(Eclipse Foundation)管理。Eclipse
是一個(gè)開放源代碼的、基于 Java 的可擴(kuò)展開發(fā)平臺(tái)。就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過(guò)插件組件構(gòu)建開發(fā)環(huán)境。幸運(yùn)的是 Eclipse
附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括 Java 開發(fā)工具(Java Development Tools,JDT
)。
Eclipse
是著名的跨平臺(tái)的自由集成開發(fā)環(huán)境(IDE
)。最初主要用來(lái) Java 語(yǔ)言開發(fā),但是目前亦有人通過(guò)插件使其作為其他計(jì)算機(jī)語(yǔ)言比如 C++
、PHP
、Python
等語(yǔ)言的開發(fā)工具。Eclipse
的本身只是一個(gè)框架平臺(tái),但是眾多插件的支持使得 Eclipse
擁有其他功能相對(duì)固定的IDE軟件很難具有的靈活性。許多軟件開發(fā)商以 Eclipse
為框架開發(fā)自己的 IDE
。
MyEclipse
是 Eclipse
的插件,也是一款功能強(qiáng)大的 J2EE 集成開發(fā)環(huán)境,由 Genuitec
公司發(fā)布,它是商用收費(fèi)的。
MyEclipse
是對(duì) Eclipse
IDE
的擴(kuò)展,利用它可以在數(shù)據(jù)庫(kù)和 JavaEE 的開發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的 JavaEE 集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML
、Struts
、JSP
、CSS
、Javascript
、SQL
,Hibernate
,Spring
。
NetBeans
是Sun公司(2009年被甲骨文收購(gòu))在2000年創(chuàng)立的開放源代碼的面向開發(fā)人員和客戶社區(qū)的集成開發(fā)環(huán)境,旨在構(gòu)建世界級(jí)的 Java IDE。
NetBeans
當(dāng)前可以在Solaris
、Windows
、Linux
和Macintosh OS X
平臺(tái)上進(jìn)行開發(fā),并在SPL
(Sun公用許可)范圍內(nèi)使用,是一個(gè)屢獲殊榮的集成開發(fā)環(huán)境。NetBeans
包括開源的開發(fā)環(huán)境和應(yīng)用平臺(tái),NetBeans IDE
可以使開發(fā)人員利用 Java 平臺(tái)能夠快速創(chuàng)建Web
、企業(yè)
、桌面
以及移動(dòng)應(yīng)用程序
,NetBeans IDE
目前支持PHP
、Ruby
、JavaScript
、Ajax
、Groovy
、Grails
和C
/C++
等開發(fā)語(yǔ)言。
NetBeans
項(xiàng)目由一個(gè)活躍的開發(fā)社區(qū)提供支持, NetBean
開發(fā)環(huán)境提供了豐富的產(chǎn)品文檔和培訓(xùn)資源以及大量的第三方插件。
IntelliJ IDEA
是一款綜合的 Java 編程環(huán)境,被許多開發(fā)人員和行業(yè)專家譽(yù)為市場(chǎng)上最好的 IDE
。
它提供了一系列最實(shí)用的的工具組合:
J2EE
,Ant
,JUnit
,SVN
和 Git
集成GUI
設(shè)計(jì)器IDEA
把 Java 開發(fā)人員從一些耗時(shí)的常規(guī)工作中解放出來(lái),顯著地提高了開發(fā)效率。具有運(yùn)行更快速,生成更好的代碼;持續(xù)的重新設(shè)計(jì)和日常編碼變得更加簡(jiǎn)易,與其它工具的完美集成;很高的性價(jià)比等特點(diǎn)。
IntelliJ IDEA
是收費(fèi)軟件,在2009年推出了免費(fèi)的社區(qū)開源版本,不過(guò)商用還是需要收費(fèi)的。
作為一個(gè)資深的 Java 開發(fā)工程師,我負(fù)責(zé)任的向大家推薦
IntelliJ IDEA
作為開發(fā)工具,理由不必細(xì)說(shuō),誰(shuí)用誰(shuí)知道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。