本書由擁有20多年教學與研究經驗的資深Java技術專家撰寫(獲Jolt大獎),是程序員的優(yōu)選Java指南。本版針對Java SE 9、10和 11全面更新。
全書共12章。
第1章概述Java語言的特色功能;
第2章詳細論述如何下載和安裝JDK以及本書的程序示例;
第3章開始討論Java 語言,包括變量、循環(huán)和簡單的函數;
第4章介紹面向對象兩大基石中極要的一個概念封裝,以及Java語言實現封裝的機制,即類與方法;
第5章介紹面向對象的另一個重要概念繼承,繼承使程序員可以使用現有的類,并根據需要進行修改;
第6章展示如何使用Java的接口(可幫助你充分獲得Java的完全面向對象程序設計能力)、lambda表達式(用來表述可以在以后某個時間點執(zhí)行的代碼塊)和內部類;
第7章討論異常處理,并給出大量實用的調試技巧;
第8章概要介紹泛型程序設計,使程序更可讀、更安全;
第9章討論Java平臺的集合框架,以及如何充分利用內建的標準集合;
第10章介紹GUI程序設計(包括如何建立窗口、如何在窗口中繪圖、如何利用幾何圖形繪圖、如何采用多種字體格式化文本,以及如何顯示圖像)和編寫代碼來響應事件(如鼠標點擊事件和按鍵事件);
第11章詳細討論Swing GUI工具包,以建立跨平臺的圖形用戶界面,包括各種按鈕、文本組件、邊框、滑塊、列表框、菜單以及對話框的有關內容;
第12章討論并發(fā)。本書*后還有一個附錄,其中列出了Java語言的保留字。
如需了解Java高級UI特性、企業(yè)編程、網絡、安全和Java強大的模塊系統(tǒng)等內容,請點擊直達卷II*高級特性的購買鏈接。
Java領域極有影響力和價值的著作之一,與《Java編程思想》齊名,10余年全球暢銷不衰,廣受好評。
針對Java SE 9、10、11全面更新,系統(tǒng)全面講解Java語言的核心概念、語法、重要特性和開發(fā)方法,包含大量案例,實踐性強。
本書是一本可以指導程序員編寫健壯且可維護代碼的經典教程和參考書。不論是使用Java SE 9、10還是11,本書都能幫助你深入理解這門語言及其API。書中提供了數百個示例程序,所有這些代碼都經過精心設計,不僅易于理解,也很容易實際應用。
這一版做了全面更新,特別是示例的更新,反映了人們期待已久的Java模塊化特性,為讀者展示了如何編寫更易于管理和演進的代碼。你會了解如何使用新的JShell的讀取-計算-打印循環(huán)(REPL)進行快捷且更具探索性的開發(fā),以及應用Process API、競爭鎖定、日志和編譯的重大改進。
在本卷中,作者全面深入地介紹了Java語言的基礎知識和UI編程,包括對象、泛型、集合、lambda表達式、Swing設計、并發(fā)和函數式編程。如果你是一個有經驗的程序員,正在轉向Java SE 9、10或11,要想獲得專家見解、解決方案和豐富的代碼,再沒有比這本書更好的資源了。
通過閱讀本書,你將:
●掌握編寫一流Java代碼的基本技術以及Java用法和*實踐
●充分利用接口、lambda表達式和內部類的強大功能
● 通過有效的異常處理和調試使程序更堅固
● 利用泛型編程編寫更安全、更可重用的代碼
● 利用Java的標準集合改善性能和效率
● 利用Swing工具包構建跨平臺GUI
●使用Java改進的并發(fā)特性充分利用多核處理器
如需了解Java高級UI特性、企業(yè)編程、網絡、安全和Java強大的模塊系統(tǒng)等內容,請點擊上圖直達卷II*高級特性的購買鏈接。
致讀者
1995年年底,Java語言在Internet舞臺一亮相便名聲大噪。原因在于它將有望成為連接用戶與信息的萬能膠,而不論這些信息來自Web服務器、數據庫、信息提供商,還是任何其他可以想象的渠道。事實上,就發(fā)展前景而言,Java的地位是獨一無二的。它是一種完全可信賴的程序設計語言,并得到了廣泛認可。其固有的可靠性與安全性不僅令Java程序員放心,也令使用Java程序的用戶放心。Java內建了對網絡編程、數據庫連接和并發(fā)等高級程序設計任務的支持。
1995年以來,已經發(fā)布了Java開發(fā)工具包(Java Development Kit)的11個主要版本。在過去的20年中,應用程序編程接口(API)已經從200個類擴展到超過4000個類,F在這些API覆蓋了用戶界面構建、數據庫管理、國際化、安全性以及XML處理等各個不同的領域。
本書是《Java核心技術》第11版的卷Ⅰ。自《Java核心技術》出版以來,每個新版本都盡可能快地跟上Java開發(fā)工具包發(fā)展的步伐,而且每一版都重新改寫了部分內容,以便利用Java的最新特性。這一版經過修訂,反映了Java 標準版(Java SE)9、10和11的特性。
與本書前幾版一樣,這一版仍然將讀者群定位為那些打算將Java應用到實際工程項目中的程序設計人員。本書假設讀者是一名具有程序設計語言(除Java之外)堅實背景知識的程序員,并且不希望書中充斥著玩具式的示例(諸如,烤面包機、動物園的動物或神經質的跳動文本)。這些內容絕對不會在本書中出現。本書的目標是讓讀者充分理解書中介紹的Java語言及Java類庫的相關特性,而不會產生任何誤解。
在本書中,我們選用大量的示例代碼演示所討論的每一個語言特性和類庫特性。我們有意使用簡單的示例程序以突出重點,然而,其中的大部分既不是贗品也沒有偷工減料。它們將成為讀者自己編寫代碼的良好開端。
我們假定讀者愿意(甚至渴望)學習Java提供的所有高級特性。例如,本書將詳細介紹下列內容:
面向對象程序設計
反射與代理
接口與內部類
異常處理
泛型程序設計
集合框架
事件監(jiān)聽器模型
圖形用戶界面設計
并發(fā)
【關于本書】
第1章概述Java與其他程序設計語言不同的功能。解釋這種語言的設計初衷,以及在哪些方面達到了預期。然后,簡要敘述Java誕生和發(fā)展的歷史。
第2章詳細論述如何下載和安裝JDK以及本書的程序示例。然后,通過編譯和運行3個典型的Java程序(一個控制臺應用、一個圖形應用、一個applet),指導讀者使用簡易的JDK、啟用Java的文本編輯器以及一個Java IDE。
第3章開始討論Java 語言。這一章涉及的基礎知識有變量、循環(huán)以及簡單的函數。對于C或C 程序員來說,學習這一章的內容將會感覺一帆風順,因為這些語言特性的語法本質上與C語言相同。對于沒有C語言程序設計背景,但使用過其他程序設計語言(如Visual Basic)的程序員來說,仔細閱讀這一章是非常必要的。
面向對象程序設計(Object-Oriented Programming,OOP)是當今程序設計的主流,而Java是一種面向對象的語言。
第4章將介紹面向對象兩大基石中最重要的一個封裝概念,以及Java語言實現封裝的機制,即類與方法。除了Java語言規(guī)則之外,還對如何完成合理的OOP設計給出了忠告。最后,介紹奇妙的javadoc工具,它將代碼注釋轉換為一組包含超鏈接的網頁。熟悉C 的程序員可以快速地瀏覽這一章,而沒有面向對象程序設計背景的程序員在進一步學習Java之前應當先花一些時間了解OOP的有關概念。
類與封裝僅僅是OOP中的一部分,第5章將介紹另一部分繼承。繼承使程序員可以使用現有的類,并根據需要進行修改。這是Java程序設計中的一個基礎技術。Java中的繼承機制與C 的繼承機制十分相似。重申一次,C 程序員可以只關注兩種語言的不同之處。
第6章展示如何使用Java的接口。接口可以讓你的理解超越第5章中的簡單繼承模型。掌握接口可以充分獲得Java的完全面向對象的程序設計能力。介紹接口之后,我們將轉而介紹lambda表達式(lambda expression),這是一種簡潔的方法,用來表述可以在以后某個時間點執(zhí)行的代碼塊。本章還將介紹Java的一個有用的技術特性內部類。
第7章討論異常處理(exception handling),這是Java的一種健壯機制,用于處理正常運行的程序可能出現意外的情況。異常提供了一種將正常處理代碼與錯誤處理代碼分開的有效手段。當然,即使程序能夠處理所有異常條件,仍然有可能無法按照預計的方式工作。這一章的后半部分將給出大量實用的調試技巧。
第8章概要介紹泛型程序設計。泛型程序設計可以讓程序更可讀、更安全。我們會展示如何使用強類型機制,而舍棄不好看也不安全的強制類型轉換,以及如何處理與老版本Java兼容所帶來的復雜問題。
第9章討論的是Java平臺的集合框架。如果希望收集多個對象并在以后獲取這些對象,就應當使用集合,這是這種情況下最適用的做法,不要簡單地把這些元素放在一個數組中。這一章會介紹如何充分利用內建的標準集合。
第10章介紹GUI程序設計。我們會討論如何建立窗口、如何在窗口中繪圖、如何利用幾何圖形繪圖、如何采用多種字體格式化文本,以及如何顯示圖像。接下來你會了解如何編寫代碼來響應事件,如鼠標點擊事件或按鍵事件。
第11章詳細討論Swing GUI工具包。Swing工具包允許建立跨平臺的圖形用戶界面。在這里你會了解各種按鈕、文本組件、邊框、滑塊、列表框、菜單以及對話框的有關內容。不過,一些更高級的組件會在卷Ⅱ中討論。
第12章是本書的最后一章,這一章將討論并發(fā),并發(fā)能夠讓程序任務并行執(zhí)行。在當今這個時代,大多數處理器都有多個內核,你通常希望這些內核都在工作,并發(fā)是Java技術的一個重要而且令人振奮的應用。
還有關于JavaFX的額外的一章,其中會給出JavaFX的簡要介紹,這是開發(fā)桌面應用的一個現代GUI工具包。