摘要:本文介紹了作者編著的一本Java語(yǔ)言程序設(shè)計(jì)的實(shí)例教材,該教材入選清華大學(xué)出版社高等學(xué)校計(jì)算機(jī)基礎(chǔ)教育教材精選。本文主要從教材建設(shè)的動(dòng)機(jī)、教材的內(nèi)容和教材的特色等方面對(duì)教材進(jìn)行了介紹。
關(guān)鍵詞:Java語(yǔ)言;教材;實(shí)例教材
中圖分類號(hào):G642
文獻(xiàn)標(biāo)識(shí)碼:B
1教材建設(shè)的動(dòng)機(jī)
相信很多人對(duì)Java這個(gè)名字并不陌生,Java的許多優(yōu)良特性使它不同于其他程序設(shè)計(jì)語(yǔ)言,例如它的跨平臺(tái)性使得基于Java開(kāi)發(fā)的軟件幾乎沒(méi)有平臺(tái)移植代價(jià),而成為眾多軟件生產(chǎn)廠家的首選語(yǔ)言。
目前在市面上已經(jīng)有許多介紹Java的書(shū)籍和教材,其中不乏一些世界著名教材,如Bruce Eckel的名作——《Java編程思想》系列教材。但是這些教材內(nèi)容過(guò)于龐雜晦澀,容易使得初學(xué)者產(chǎn)生畏難和厭倦心理,因此不適合初學(xué)者閱讀。而國(guó)內(nèi)的教材大都采用知識(shí)點(diǎn)講解+上機(jī)手冊(cè)的方式,使得知識(shí)點(diǎn)的掌握和學(xué)生的動(dòng)手實(shí)踐分離開(kāi)來(lái),很多學(xué)生在學(xué)習(xí)了知識(shí)點(diǎn)以后仍然不知道如何動(dòng)手做練習(xí)、編程序。
所以,我們就產(chǎn)生了動(dòng)手編寫(xiě)一本采用全新組織方式的Java語(yǔ)言程序設(shè)計(jì)教材的想法,這本教材首先要通俗易懂,其次這本書(shū)一定要注重實(shí)踐、實(shí)例豐富。最終這些想法促使了《Java編程基礎(chǔ)、實(shí)例與進(jìn)階》教材在清華大學(xué)出版社的出版發(fā)行。
2教材的內(nèi)容
本書(shū)內(nèi)容涉及Java語(yǔ)言的主要方面,包括Java概述、Java語(yǔ)言基礎(chǔ)知識(shí)、面向?qū)ο蟮木幊谭椒?、Java常用類庫(kù)和數(shù)據(jù)結(jié)構(gòu)、Java I/O系統(tǒng)、Java的異常處理機(jī)制、圖形用戶界面、多線程、網(wǎng)絡(luò)編程、優(yōu)雅而高效的編程以及編程實(shí)例等十一個(gè)章節(jié),比較全面地覆蓋了Java語(yǔ)言的基礎(chǔ)知識(shí)。
第一章——Java概述,主要講解了面向?qū)ο蟮幕靖拍?、Java開(kāi)發(fā)工具包JDK、Java集成開(kāi)發(fā)環(huán)境Eclipse等基本知識(shí)點(diǎn);在示例解析中介紹了JDK的安裝方法和安裝過(guò)程、Eclipse的安裝過(guò)程、利用Eclipse編寫(xiě)并運(yùn)行第一個(gè)Java程序——HelloWorld的過(guò)程;在知識(shí)拓展部分介紹了用JDK編寫(xiě)并運(yùn)行HelloWorld程序的方法和步驟。
第二章——Java語(yǔ)言基礎(chǔ)知識(shí),主要講解了Java中的標(biāo)識(shí)符和關(guān)鍵字、Java中的基本數(shù)據(jù)類型、數(shù)據(jù)類型的轉(zhuǎn)換規(guī)則、常量和變量的概念、Java中的運(yùn)算符及其優(yōu)先順序、Java中的流程控制語(yǔ)句以及Java程序的構(gòu)成要素等基本知識(shí)點(diǎn);在示例解析中選擇了查看基本類型的取值范圍、基本類型之間的轉(zhuǎn)換、奇偶數(shù)判斷、判斷一個(gè)對(duì)象是不是一個(gè)類的實(shí)例、找出從1到給定整數(shù)之間所有的質(zhì)數(shù)、解一元二次方程等小編程實(shí)例;在知識(shí)拓展中介紹了如何用switch語(yǔ)句實(shí)現(xiàn)學(xué)生成績(jī)判斷以及如何使用遞歸函數(shù)等較為高級(jí)的編程實(shí)例。
第三章——面向?qū)ο蟮木幊谭椒?,主要講解了類、對(duì)象、類的封裝、類的繼承、類的多態(tài)、抽象類與接口等基本知識(shí)點(diǎn);在示例解析中選擇了訪問(wèn)控制符的作用范圍、方法重載、構(gòu)造方法的重載、類繼承中實(shí)例對(duì)象的構(gòu)造順序、final類不允許派生子類、類繼承中屬性和方法的繼承和覆蓋、基于接口實(shí)現(xiàn)多繼承等小編程實(shí)例;在知識(shí)拓展中介紹了在Java中如何判斷兩個(gè)類對(duì)象的值是否相等、在Java中如何實(shí)現(xiàn)值傳遞等較為高級(jí)的編程實(shí)例。
第四章——Java常用的類庫(kù)和數(shù)據(jù)結(jié)構(gòu),主要講解了String對(duì)象和StringBuffer對(duì)象、System類、Math對(duì)象、數(shù)組以及常用集合類等基本知識(shí)點(diǎn);在示例解析中選擇了String類的常見(jiàn)操作、StringBuffer類的常見(jiàn)操作、獲得系統(tǒng)的屬性、回顯字符串、打印乘法表、兩個(gè)矩陣相加的操作、兩個(gè)矩陣相乘的操作、讀取并顯示文件內(nèi)容、Hashtable類的應(yīng)用等小編程實(shí)例;在知識(shí)拓展中介紹了如何讀取并反向顯示文件內(nèi)容、如何使得集合類能夠識(shí)別對(duì)象的類型、如何方便地對(duì)一組對(duì)象進(jìn)行排序等較為高級(jí)的編程實(shí)例。
第五章——Java I/O系統(tǒng),主要講解了流、字節(jié)流、字符流、文件操作以及對(duì)象序列化等基本知識(shí)點(diǎn);在示例解析中選擇了File類常用方法使用示例、文件行數(shù)統(tǒng)計(jì)、利用FileInputStream讀取文件、利用FileOutputStream寫(xiě)入文件、在指定文件中查找詞語(yǔ)、列目錄命令dir的Java實(shí)現(xiàn)、在指定目錄中查找詞語(yǔ)以及讀取一個(gè)文件的內(nèi)容并寫(xiě)入另外一個(gè)文件中等小編程實(shí)例;在知識(shí)拓展中介紹了在列目錄時(shí)如何過(guò)濾文件、如何向文件中寫(xiě)入指定的內(nèi)容、如何實(shí)現(xiàn)對(duì)象的序列化等較為高級(jí)的編程實(shí)例。
第六章——異常處理,主要講解了異常、異常的處理、異常的拋出以及自定義異常等基本知識(shí)點(diǎn);在實(shí)例解析中選擇了數(shù)組下標(biāo)越界異常、空指針異常、拋出并捕獲異常的示例以及構(gòu)造一個(gè)特殊的字符串類等小編程實(shí)例;在知識(shí)拓展中介紹了如何自定義異常等較為高級(jí)的編程實(shí)例。
第七章——圖形用戶界面,主要講解了AWT圖形用戶界面、Swing圖形用戶界面以及Java Applet等基本知識(shí)點(diǎn);在示例解析中選擇了AWT圖形用戶界面的常見(jiàn)控件、Swing圖形用戶界面的常見(jiàn)控件以及Java Applet使用示例等小編程實(shí)例;在知識(shí)拓展中介紹了匿名類及其在圖形界面編程中的應(yīng)用等較為高級(jí)的編程實(shí)例。
第八章——多線程,主要講解了線程、線程的生命周期與控制、線程的調(diào)度以及多線程的同步與通信等基本知識(shí)點(diǎn);在示例解析中選擇了通過(guò)Tread類實(shí)現(xiàn)線程、通過(guò)Runnable接口實(shí)現(xiàn)線程、設(shè)置線程的優(yōu)先級(jí)、終止一個(gè)線程、幽靈程序以及線程池等小編程實(shí)例;在知識(shí)拓展中介紹了如何實(shí)現(xiàn)線程的同步、如何在線程之間交換數(shù)據(jù)等較為高級(jí)的編程實(shí)例。
第九章——網(wǎng)絡(luò)編程,主要講解了網(wǎng)絡(luò)和Java網(wǎng)絡(luò)編程的基本概念、Internet地址操作、URL和URLConnection、套接字編程等基本知識(shí)點(diǎn);在實(shí)例解析中選擇了顯示指定域名的主機(jī)的IP地址信息、顯示本機(jī)的IP地址信息、獲得一個(gè)指定的URL的內(nèi)容、查看指定主機(jī)的指定端口是否提供TCP服務(wù)、Echo的服務(wù)端和客戶端實(shí)現(xiàn)等小編程實(shí)例;在知識(shí)拓展中介紹了如何使用Socket獲得一個(gè)指定URL的內(nèi)容、如何使用服務(wù)器端套接字查看本機(jī)的指定端口是否提供TCP服務(wù);如何實(shí)現(xiàn)ping命令、如何獲得本機(jī)的MAC地址等較為高級(jí)的編程實(shí)例。
第十章——優(yōu)雅而高效的Java編程,講解了編碼規(guī)范、程序的效率以及設(shè)計(jì)模式等基本知識(shí)點(diǎn);在實(shí)例解析中選擇了靜態(tài)工廠模式、工廠方法模式、抽象工廠模式、單例模式、觀察器模式等小編程實(shí)例;在知識(shí)拓展部分介紹了如何應(yīng)用Java自帶的觀察器模式實(shí)現(xiàn)等較為高級(jí)的編程實(shí)例。
第十一章——編程實(shí)例,主要從需求分析、設(shè)計(jì)到實(shí)現(xiàn)的全過(guò)程講解了兩個(gè)編程實(shí)例:數(shù)據(jù)表查看器和流程圖繪制工具。
3教材的特色
本書(shū)從實(shí)用性的角度出發(fā),以通俗易懂的語(yǔ)言、全新的組織方式、大量翔實(shí)的編程實(shí)例,采用插圖的全新方式介紹了Java語(yǔ)言。在每一章中以基本知識(shí)點(diǎn)、示例解析和知識(shí)拓展三個(gè)部分分別介紹了基礎(chǔ)知識(shí)、基礎(chǔ)知識(shí)的示例解析和更進(jìn)一步的知識(shí)講解,具體地說(shuō):(1) 在基本知識(shí)點(diǎn)部分,簡(jiǎn)單扼要的介紹了Java語(yǔ)言各個(gè)方面的基礎(chǔ)知識(shí),精心挑選了最基本、最重要的知識(shí)點(diǎn),使用了盡量通俗的語(yǔ)言,易于Java初學(xué)者掌握這些基本知識(shí)。
(2) 在示例解析部分,圍繞基本知識(shí)點(diǎn),精心編寫(xiě)了編程的小例子,既有利于初學(xué)者對(duì)于基本知識(shí)點(diǎn)的理解和掌握,又鍛煉了編程能力。
(3) 在知識(shí)拓展部分,介紹了Java語(yǔ)言各個(gè)方面的一些較為高級(jí)的知識(shí),并通過(guò)實(shí)例的方式給出,利于初學(xué)者提高編程技能。
(4) 在本書(shū)的最后一章給出了兩個(gè)Java語(yǔ)言的編程實(shí)例,有利于初學(xué)者鍛煉使用Java語(yǔ)言解決實(shí)際問(wèn)題的能力。
4結(jié)束語(yǔ)
本書(shū)適合初學(xué)者學(xué)習(xí)Java語(yǔ)言和Java編程,可以作為高等院校和專業(yè)技術(shù)學(xué)校講授Java課程的教程或?qū)嵗坛蹋部梢宰鳛槌鯇W(xué)者的自學(xué)教材。特向廣大教師和學(xué)生推薦該教材。
參考文獻(xiàn)
[1] 王勇,代桂平,方娟,毛國(guó)君. Java編程基礎(chǔ)、實(shí)例與進(jìn)階[M]. 北京:清華大學(xué)出版社,2009.