為了適應Java技術(shù)的快速發(fā)展和計算機教學的需要,作者基于多年從事Java程序設(shè)計教學和開發(fā)實踐的經(jīng)驗編寫了《Java面向?qū)ο蟪绦蛟O(shè)計》。
全書文字簡明易懂,并且提供了大量程序示例幫助讀者理解、掌握相關(guān)知識,所有程序示例全部在JDK 16環(huán)境下編譯通過并運行。另外,該書還介紹了很多Java技術(shù)的應用場景以及背后蘊含的思想,力爭使讀者對相關(guān)技術(shù)有一個全方位的認識。
《Java面向?qū)ο蟪绦蛟O(shè)計》可作為高等院校計算機相關(guān)專業(yè)Java程序設(shè)計課程的教材,也可作為Java語言及編程愛好者的參考資料。
Java自1995年問世以來,經(jīng)過20多年的發(fā)展,目前已廣泛應用于互聯(lián)網(wǎng)、PC、數(shù)據(jù)中心、游戲、移動計算等領(lǐng)域,廣受全球開發(fā)者的喜愛。根據(jù)TIOBE排行榜2017年、2018年和2019年的數(shù)據(jù),Java都是獨占鰲頭?梢哉f,Java是互聯(lián)網(wǎng)時代最具影響力和代表性的語言之一。
為了適應Java技術(shù)的快速發(fā)展和計算機教學的需要,作者基于多年從事Java程序設(shè)計教學和開發(fā)實踐的經(jīng)驗編寫了本書。本書文字簡明易懂,并且提供了大量程序示例幫助讀者理解、掌握相關(guān)知識,所有程序示例全部在JDK 16環(huán)境下編譯通過并運行。另外,本書還介紹了很多Java技術(shù)的應用場景以及背后蘊含的思想,力爭使讀者對相關(guān)技術(shù)有一個全方位的認識。本書可作為高等院校計算機相關(guān)專業(yè)Java程序設(shè)計課程的教材,也可作為Java語言及編程愛好者的參考資料。作者衷心地希望本書能成為廣大讀者的良師益友。
本書共分為十章。第一章主要介紹了Java的發(fā)展歷史以及技術(shù)特點,如何安裝、配置JDK,如何利用cmd命令行環(huán)境、集成開發(fā)環(huán)境Eclipse以及JShell 來編輯、編譯和運行Java程序。第二章主要介紹了Java數(shù)據(jù)類型、運算符、變量與常量,輸入輸出、分支與循環(huán)等基礎(chǔ)語法知識。第三章主要介紹了面向?qū)ο缶幊躺婕暗幕A(chǔ)概念,如何定義一個類以及如何對定義的類進行實例化并通過對象的引用來調(diào)用類中的方法,this和static的含義與用法,Java方法參數(shù)的值傳遞原則以及package與import機制。第四章介紹了Java的一維數(shù)組和高維數(shù)組的聲明、創(chuàng)建、初始化以及數(shù)組元素的訪問,還包括與數(shù)組緊密相關(guān)的命令行參數(shù)、for each循環(huán)以及數(shù)組排序等知識。第五章主要介紹了Java的一些高級類特性,主要有繼承、多態(tài)、抽象類、接口和內(nèi)部類等,還包括Java SE 8引入的lambda表達式。第六章主要介紹了Java異常的分類、異常處理機制以及如何自定義異常。第七章首先介紹了Java的泛型機制,然后從集合接口和集合具體實現(xiàn)類兩個方面介紹了Java的集合框架。在集合接口方面主要包括Collec-tion、Iterable、Set、List、Map、Queue等。在集合具體實現(xiàn)類方面主要包括List 下的ArrayList和LinkedList,Set下的HashSet、TreeSet和EnumSet,Queue下的Priority Queue,Map下的HashMap、TreeMap、LinkedHashMap和Identi-tyHashMap。第八章主要包括Swing和AWT簡介、畫圖、布局管理器、事件處理以及swing圖形用戶界面組件等幾個部分。第九章首先介紹了線程的相關(guān)概念、線程的狀態(tài)轉(zhuǎn)換以及如何通過實現(xiàn)Runnable接口、Callable和繼承Thread類來創(chuàng)建自己的線程,還介紹了Java為線程提供的一些常用方法,如何通過ReentrantLock鎖和synchronized關(guān)鍵字來同步線程以及Swing與事件分派線程。第十章首先介紹了Java輸入輸出流的相關(guān)概念和整體分類,然后分字節(jié)輸入流、字節(jié)輸出流、字符輸入流以及字符輸出流四個部分詳細介紹了一些常用I/O流的主要功能與基本用法。最后介紹了從JDKl.4開始引入的java.nio,主要包括NIO的三個核心對象(Buffer、Channel、Selector)的主要功能和基本用法。
本書第一~三、五、七~十章由劉丹老師編寫;第四章由王軒老師編寫;第六章由楊琳老師編寫。另外,童名文教授在本書的編寫過程中提出了很多寶貴的建議并對本書的出版給予了全力支持,作者對此表示誠摯的謝意。由于Java仍在不斷更新發(fā)展之中,技術(shù)日新月異,作者的理論與實踐水平有限,疏漏之處敬請讀者批評指正。