Java
物件導向高階程式語言 / 維基百科,自由的 encyclopedia
Java是一種廣泛使用的電腦程式設計語言,擁有跨平台、物件導向、泛型程式設計的特性,廣泛應用於企業級Web應用開發和移動應用開發。
編程範型 | 多重范型:面向對象(類別基礎)、結構化、指令式、泛型、反射、並發計算 |
---|---|
設計者 | 詹姆斯·高斯林 太陽計算機系統 |
實作者 | 甲骨文公司 (太陽計算機系統) |
面市時間 | 1995年,29年前(1995)[1] |
當前版本 |
|
型態系統 | 靜態、安全、強類型、標明類型(英語:Nominal type system) |
許可證 | GNU通用公共許可協議、JCP |
文件擴展名 | .java、.class、.jar |
網站 | www |
主要實作產品 | |
OpenJDK、GCJ、其他 | |
衍生副語言 | |
泛型Java(英語:Generic Java)、Pizza(英語:Pizza (programming language)) | |
啟發語言 | |
Ada 83、 Generic Java(英語:Generics in Java)、 | |
影響語言 | |
Ada 2005、 | |
任職於昇陽電腦的詹姆斯·高斯林等人於1990年代初開發Java語言的雛形,最初被命名為Oak,目標設定在家用電器等小型系統的程式語言,應用在電視機、電話、鬧鐘、烤麵包機等家用電器的控制和通訊。由於這些智能化家電的市場需求沒有預期的高,昇陽電腦放棄了該項計劃。隨着1990年代網際網路的發展,昇陽電腦看見Oak在網際網路上應用的前景,於是改造了Oak,於1995年5月以Java的名稱正式發布。Java伴隨着互聯網的迅猛發展而發展,逐漸成為重要的網絡編程語言。
Java編程語言的風格十分接近C++語言。繼承了C++語言面向對象技術的核心,捨棄了容易引起錯誤的指標,以參照取代;移除了C++中的運算子重載和多重繼承特性,用接口取代;增加垃圾回收器功能。在Java SE 1.5版本中引入了泛型編程、類型安全的枚舉、不定長參數和自動裝/拆箱特性。昇陽電腦對Java語言的解釋是:「Java編程語言是個簡單、面向對象、分布式、解釋性、健壯、安全、與系統無關、可移植、高性能、多線程和動態的語言」。
Java不同於一般的編譯語言或直譯語言。它首先將源代碼編譯成字節碼,再依賴各種不同平台上的虛擬機來解釋執行字節碼,從而具有「一次編寫,到處運行」的跨平台特性。在早期JVM中,這在一定程度上降低了Java程序的運行效率。但在J2SE1.4.2發布後,Java的執行速度有了大幅提升。
與傳統型態不同,昇陽電腦在推出Java時就將其作為開放的技術。全球的Java開發公司被要求所設計的Java軟件必須兼容。「Java語言靠群體的力量而非公司的力量」是昇陽電腦的口號之一,並獲得了廣大軟件開發商的認同。這與微軟公司所倡導的注重精英和封閉式的模式完全不同,此外,微軟公司後來推出了與之競爭的.NET平台以及模仿Java的C#語言。後來昇陽電腦被甲骨文公司併購[14],Java也隨之成為甲骨文公司的產品。