原文位址: http://www.work100.net/training/java-intro.html 更多教程: 光束雲 - 免費課程
Java簡介
請參照如上
章節導航
進行閱讀
1.概述
Java 是由
Sun Microsystems
公司于1995年5月推出的 Java 面向對象程式設計語言和 Java 平台的總稱。由
James Gosling
和同僚們共同研發,并在1995年正式推出。
Java 分為三個體系:
- JavaSE(J2SE): Java2 Platform Standard Edition,Java平台标準版
- JavaEE(J2EE): Java 2 Platform,Enterprise Edition,Java平台企業版
- JavaME(J2ME): Java 2 Platform Micro Edition,Java平台微型版
2005年6月,JavaOne 大會召開,Sun 公司公開 Java SE 6。此時,Java 的各種版本已經更名以取消其中的數字"2":J2EE更名為Java EE, J2SE更名為Java SE,J2ME更名為Java ME。
2.主要特性
簡單
Java 語言的文法與
C
語言和
C++
語言很接近,使得大多數程式員很容易學習和使用。另一方面,Java 丢棄了
C++
中很少使用的、很難了解的、令人迷惑的那些特性,如操作符重載、多繼承、自動的強制類型轉換。特别地,Java 語言不使用指針,而使用引用。并提供了自動的垃圾回收,使得程式員不必為記憶體管理而擔憂。
面向對象
Java 語言提供類、接口和繼承等面向對象的特性,為了簡單起見,隻支援類之間的單繼承,但支援接口之間的多繼承,并支援類與接口之間的實作機制(關鍵字為
implements
)。Java 語言全面支援動态綁定,而
C++
語言隻對虛函數使用動态綁定。總之,Java 語言是一個純的面向對象程式設計語言。
分布式
Java 語言支援
Internet
應用的開發,在基本的 Java 應用程式設計接口中有一個網絡應用程式設計接口(
java net
),它提供了用于網絡應用程式設計的類庫,包括
URL
、
URLConnection
Socket
ServerSocket
等。Java 的
RMI
(遠端方法激活)機制也是開發分布式應用的重要手段。
健壯
Java 的強類型機制、異常處理、垃圾的自動收集等是 Java 程式健壯性的重要保證。對指針的丢棄是 Java 的明智選擇。Java的安全檢查機制使得 Java 更具健壯性。
安全
Java 通常被用在網絡環境中,為此,Java 提供了一個安全機制以防惡意代碼的攻擊。除了 Java 語言具有的許多安全特性以外,Java 對通過網絡下載下傳的類具有一個安全防範機制(類
ClassLoader
),如配置設定不同的名字空間以防替代本地的同名類、位元組代碼檢查,并提供安全管理機制(類
SecurityManager
)讓 Java 應用設定安全哨兵。
體系結構
Java 程式(字尾為
.java
的檔案)在 Java 平台上被編譯為體系結構中立的位元組碼格式(字尾為
.class
的檔案),然後可以在實作這個 Java 平台的任何系統中運作。這種途徑适合于異構的網絡環境和軟體的分發。
可移植
這種可移植性來源于體系結構中立性,另外,Java 還嚴格規定了各個基本資料類型的長度。Java 系統本身也具有很強的可移植性,Java 編譯器是用Java 實作的,Java 的運作環境是用
ANSI C
實作的。
解釋型
如前所述,Java 程式在 Java 平台上被編譯為位元組碼格式,然後可以在實作這個 Java 平台的任何系統中運作。在運作時,Java 平台中的 Java 解釋器對這些位元組碼進行解釋執行,執行過程中需要的類在聯接階段被載入到運作環境中。
高性能
與那些解釋型的進階腳本語言相比,Java 的确是高性能的。事實上,Java 的運作速度随着
JIT(Just-In-Time)
編譯器技術的發展越來越接近于
C++
。
多線程
在 Java 語言中,線程是一種特殊的對象,它必須由
Thread
類或其子(孫)類來建立。通常有兩種方法來建立線程:其一,使用型構為
Thread(Runnable)
的構造子類将一個實作了
Runnable
接口的對象包裝成一個線程,其二,從
Thread
類派生出子類并重寫
run
方法,使用該子類建立的對象即為線程。值得注意的是
Thread
類已經實作了
Runnable
接口,是以,任何一個線程均有它的
run
方法,而
run
方法中包含了線程所要運作的代碼。線程的活動由一組方法來控制。Java 語言支援多個線程的同時執行,并提供多線程之間的同步機制(關鍵字為
synchronized
)。
動态
Java 語言的設計目标之一是适應于動态變化的環境。Java 程式需要的類能夠動态地被載入到運作環境,也可以通過網絡來載入所需要的類。這也有利于軟體的更新。另外,Java 中的類有一個運作時刻的表示,能進行運作時刻的類型檢查。
3.發展曆史
- 1995年5月23日,Java語言誕生
- 1996年1月,第一個JDK-JDK1.0誕
- 1996年4月,10個最主要的作業系統供應商申明将在其産品中嵌入JAVA技術
- 1996年9月,約8.3萬個網頁應用了JAVA技術來制作
- 1997年2月18日,JDK1.1釋出
- 1997年4月2日,JavaOne會議召開,參與者逾一萬人,創當時全球同類會議規模之紀錄
- 1997年9月,JavaDeveloperConnection社群成員超過十萬
- 1998年2月,JDK1.1被下載下傳超過2,000,000次
- 1998年12月8日,JAVA2企業平台J2EE釋出
- 1999年6月,SUN公司釋出Java的三個版本:标準版(JavaSE,以前是J2SE)、企業版(JavaEE以前是J2EE)和微型版(JavaME,以前是J2ME)
- 2000年5月8日,JDK1.3釋出
- 2000年5月29日,JDK1.4釋出
- 2001年6月5日,NOKIA宣布,到2003年将出售1億部支援Java的手機
- 2001年9月24日,J2EE1.3釋出
- 2002年2月26日,J2SE1.4釋出,自此Java的計算能力有了大幅提升
- 2004年9月30日18:00PM,J2SE1.5釋出,成為Java語言發展史上的又一裡程碑。為了表示該版本的重要性,J2SE1.5更名為Java SE 5.0
- 2005年6月,JavaOne大會召開,SUN公司公開Java SE 6。此時,Java的各種版本已經更名,以取消其中的數字"2":J2EE更名為Java EE,J2SE更名為Java SE,J2ME更名為Java ME
- 2006年12月,SUN公司釋出JRE6.0
- 2009年04月20日,甲骨文74億美元收購Sun。取得java的版權。
- 2010年11月,由于甲骨文對于Java社群的不友善,是以Apache揚言将退出JCP。
- 2011年7月28日,甲骨文釋出 Java7.0 的正式版。
- 2014年3月18日,Oracle公司發表 Java SE 8。
- 2017年9月21日,Oracle公司發表 Java SE 9
- 2018年3月21日,Oracle公司發表 Java SE 10
- 2018年9月25日,Java SE 11 釋出
- 2019年3月20日,Java SE 12 釋出
4.開發工具
作為一名 Java 程式開發人員,可以的選擇內建開發環境
IDE(Integrated Development Environment)
非常多,這得益于 Java 是一門開源語言。
- 有開源免費的
- 有商用收費的
如何選擇一款适合自己的內建開發環境,亦或說選擇一款符合自己項目開發需要的內建開發環境,如果選擇得當,那麼就能夠使得開發工作事半功倍;否則事倍功半。
免費開源Eclipse
Eclipse
最初是由
IBM
公司開發的替代商業軟體
Visual Age for Java
的下一代
IDE
開發環境,2001年11月貢獻給開源社群,現在它由非營利軟體供應商聯盟
Eclipse
基金會(Eclipse Foundation)管理。
Eclipse
是一個開放源代碼的、基于 Java 的可擴充開發平台。就其本身而言,它隻是一個架構和一組服務,用于通過插件元件建構開發環境。幸運的是
Eclipse
附帶了一個标準的插件集,包括 Java 開發工具(Java Development Tools,
JDT
Eclipse
是著名的跨平台的自由內建開發環境(
IDE
)。最初主要用來 Java 語言開發,但是目前亦有人通過插件使其作為其他計算機語言比如
C++
PHP
Python
等語言的開發工具。
Eclipse
的本身隻是一個架構平台,但是衆多插件的支援使得
Eclipse
擁有其他功能相對固定的IDE軟體很難具有的靈活性。許多軟體開發商以
Eclipse
為架構開發自己的
IDE
商用收費MyEclipse
MyEclipse
是
Eclipse
的插件,也是一款功能強大的 J2EE 內建開發環境,由
Genuitec
公司釋出,它是商用收費的。
MyEclipse
是對
Eclipse
IDE
的擴充,利用它可以在資料庫和 JavaEE 的開發、釋出以及應用程式伺服器的整合方面極大的提高工作效率。它是功能豐富的 JavaEE 內建開發環境,包括了完備的編碼、調試、測試和釋出功能,完整支援
HTML
Struts
JSP
CSS
Javascript
SQL
,
Hibernate
Spring
Oracle公司免費的NetBeans
NetBeans
是Sun公司(2009年被甲骨文收購)在2000年創立的開放源代碼的面向開發人員和客戶社群的內建開發環境,旨在建構世界級的 Java IDE。
NetBeans
目前可以在
Solaris
Windows
Linux
和
Macintosh OS X
平台上進行開發,并在
SPL
(Sun公用許可)範圍内使用,是一個屢獲殊榮的內建開發環境。
NetBeans
包括開源的開發環境和應用平台,
NetBeans IDE
可以使開發人員利用 Java 平台能夠快速建立
Web
企業
桌面
以及
移動應用程式
NetBeans IDE
目前支援
PHP
Ruby
JavaScript
Ajax
Groovy
Grails
C
/
C++
等開發語言。
NetBeans
項目由一個活躍的開發社群提供支援,
NetBean
開發環境提供了豐富的産品文檔和教育訓練資源以及大量的第三方插件。
IntelliJ IDEA
IntelliJ IDEA
是一款綜合的 Java 程式設計環境,被許多開發人員和行業專家譽為市場上最好的
IDE
它提供了一系列最實用的的工具組合:
- 智能編碼輔助和自動控制
- 支援
J2EE
Ant
JUnit
SVN
內建Git
- 非平行的編碼檢查和創新的
設計器GUI
IDEA
把 Java 開發人員從一些耗時的正常工作中解放出來,顯著地提高了開發效率。具有運作更快速,生成更好的代碼;持續的重新設計和日常編碼變得更加簡易,與其它工具的完美內建;很高的成本效益等特點。
IntelliJ IDEA
是收費軟體,在2009年推出了免費的社群開源版本,不過商用還是需要收費的。
作為一個資深的 Java 開發工程師,我負責任的向大家推薦 IntelliJ IDEA
作為開發工具,理由不必細說,誰用誰知道!
下一篇:
開發環境配置如果對課程内容感興趣,可以掃碼關注我們的或
公衆号
,及時關注我們的課程更新
QQ群
