- 零基礎學Java第2版
- 陳潔
- 1026字
- 2018-12-31 19:34:42
7.1 JDK 5和JDK 6特性
本節介紹什么是JDK,以及Java開發工具集中兩個不同的JDK版本。本節的講解比較簡單,有興趣深入學習的讀者可查看其他的相關書籍。
7.1.1 什么是JDK
JDK即Java開發工具包(Java Development Kit, JDK),JDK是Sun公司免費提供的Java語言工具,是Java應用程序開發的基礎。通常第三方開發工具“JBuilder9.0”、“IBM VisualAge for Java”等都是基于JDK進行開發。
7.1.2 JDK 5的特點
JDK 5其實就是JDK1.5,JDK1.5(開發代號猛虎)的一個重要主題就是通過新增一些特性來簡化開發,包括泛型、for-each循環、自動裝包/拆包、枚舉、可變參數、靜態導入。
使用這些特性有助于編寫更加清晰、精悍、安全的代碼。下面簡單介紹一下這些新特性。
?泛型(Generic)
C++通過模板技術可以指定集合的元素類型,而Java在1.5之前一直沒有相對應的功能。在C++中,一個集合可以存放任何類型的對象,相應地從集合里面拿對象的時候,也不得不對它們進行強制的類型轉換。JDK1.5引入了泛型,并且允許指定集合里元素的類型,這樣可得到強類型在編譯時刻進行類型檢查的好處。
?for-each循環
for-each循環的加入簡化了集合的遍歷。
?自動裝包/拆包(Autoboxing/unboxing)
自動裝包/拆包大大方便了基本類型數據和其包裝類的使用。自動裝包就是基本類型自動轉為包裝類。自動拆包就是包裝類自動轉為基本類型。在JDK1.5之前,總是對集合不能存放基本類型而耿耿于懷,現在自動轉換機制解決了問題。
?枚舉(Enums)
JDK1.5加入了一個全新類型的“類”—枚舉類型。
?可變參數(Varargs)
可變參數的出現,使程序員可以聲明一個接受可變參數數目的方法。
注意
可變參數必須是函數聲明中的最后一個參數。
?靜態導入(Static Imports)
要使用靜態成員(方法和變量),必須給出提供這個方法的類。使用靜態導入可以使被導入類的所有靜態變量和靜態方法在當前類直接可見,從而在使用這些靜態成員時無須再給出它們的類名。
7.1.3 JDK 6的特點
瀏覽了JDK6的新特性,感覺“Compiler API”的應用有很大空間。JDK6提供對代碼的編譯功能,可以實現代碼編輯、編譯及加載運行,可以在系統運行中動態配置和擴展用戶自定義的功能,甚至可以把Java語句作為腳本,內嵌到原有系統中擴充功能集。
7.1.4 JDK 5與JDK 6的比較
2006年底,Sun公司發布了Java Standard Edition 6(Java SE 6)的最終正式版,代號“Mustang (野馬)”,跟“Tiger(Java SE 5)”相比,“Mustang”在性能方面有了不錯的提升。從與“Tiger”在API類庫的比較來講,有了大幅度加強,雖然“Mustang”在API庫方面的新特性顯得不太多,但其提供了許多實用和方便的功能:在腳本、Web Service、XML、編譯器API數據庫、JMX、網絡方面都有不錯的新特性和功能加強。
說明
隨著不斷的發展和進步,相信JDK 6會有不錯的表現,但目前公司最通用的是JDK 5。
- Java EE框架整合開發入門到實戰:Spring+Spring MVC+MyBatis(微課版)
- Java入門很輕松(微課超值版)
- Rust Cookbook
- Web Application Development with MEAN
- 從學徒到高手:汽車電路識圖、故障檢測與維修技能全圖解
- PostgreSQL Replication(Second Edition)
- D3.js By Example
- App Inventor創意趣味編程進階
- Canvas Cookbook
- App Inventor 2 Essentials
- 百萬在線:大型游戲服務端開發
- Applied Deep Learning with Python
- 深入理解Kafka:核心設計與實踐原理
- Scratch編程從入門到精通
- Building Scalable Apps with Redis and Node.js