前言
Java 是一門(mén)簡(jiǎn)單的、跨平臺(tái)的、面向?qū)ο蟮木幊陶Z(yǔ)言,從1995 年至今
,
仍然是
主流程序設(shè)計(jì)語(yǔ)言之一,是面向?qū)ο蟪绦蛟O(shè)計(jì)教學(xué)的必學(xué)語(yǔ)言。
本書(shū)是由具有多年教學(xué)經(jīng)驗(yàn)和實(shí)踐經(jīng)歷的專業(yè)人員編寫(xiě),從Java 語(yǔ)言中最基本
的概念切入,深入淺出地講解了Java 在面向?qū)ο缶幊讨兄匾乃枷牒统S玫闹R(shí)及
技巧,包括初學(xué)者經(jīng)常疑惑的一些問(wèn)題:類與對(duì)象的關(guān)系、繼承與多態(tài)的理解、繼承
與接口的選擇等,同時(shí)還引入了編者多年的實(shí)踐經(jīng)驗(yàn),結(jié)合案例展現(xiàn)了實(shí)際生產(chǎn)中常
用的設(shè)計(jì)模式。
在章節(jié)的安排上,由易到難,適合零基礎(chǔ)的初學(xué)者從頭開(kāi)始學(xué)習(xí)。本書(shū)的主要特
點(diǎn)如下。
(1)內(nèi)容全面,涉及了Java 所有的常用內(nèi)容。
(2)由淺入深,規(guī)范的編碼風(fēng)格和質(zhì)量。
(3)注重基礎(chǔ)知識(shí)與實(shí)例相結(jié)合,通俗易懂的講解風(fēng)格能幫助學(xué)生對(duì)抽象內(nèi)容
的理解。
(4)理論聯(lián)系實(shí)際,每章最后都提供有針對(duì)性的實(shí)踐題,有一定難度的實(shí)踐題
都提供了編程提示。
(5)注重知識(shí)的綜合應(yīng)用,各章中不但給出了某個(gè)知識(shí)點(diǎn)的實(shí)例,而且給出了
將各方面知識(shí)點(diǎn)融合起來(lái)進(jìn)行應(yīng)用的綜合實(shí)例,適合培養(yǎng)應(yīng)用型人才。
(6)為了方便教學(xué)和自學(xué)者動(dòng)手編程實(shí)踐,書(shū)中包含了精心安排的配套的實(shí)驗(yàn)
指導(dǎo)和課程設(shè)計(jì)內(nèi)容。
I
Java
程序設(shè)計(jì)
本書(shū)由亳州學(xué)院常雪琴教授和西安長(zhǎng)天科技有限公司陳亮工程師整體策劃,陳亮
完成實(shí)驗(yàn)的架構(gòu)與測(cè)試,其中,常雪琴編寫(xiě)第1~3 章,亳州學(xué)院田廣東教授編寫(xiě)第4 章,
甘肅廣播電視大學(xué)陳秀蘭教授編寫(xiě)第5~7 章,亳州學(xué)院圣光磊副教授編寫(xiě)第8、9 章,
亳州學(xué)院金鑫鑫副教授編寫(xiě)第10、11 章,亳州學(xué)院張道華副教授編寫(xiě)第12、13 章,
亳州學(xué)院唐淑萍講師編寫(xiě)第14、15 章。
由于編者水平有限,書(shū)中難免有疏漏與不足之處,歡迎廣大讀者批評(píng)、指正。
編 者
2020 年8 月
目錄
第一章??Java語(yǔ)言入門(mén).
1
第一節(jié)??Java發(fā)展及前景.
1
第二節(jié)??Java運(yùn)行機(jī)制及JVM
3
第三節(jié)??Java語(yǔ)言的特點(diǎn)
4
第四節(jié)??Java程序開(kāi)發(fā)
5
小結(jié)
.
13
思考題.
.
13
第二章??Java語(yǔ)言基礎(chǔ).15
第一節(jié)??標(biāo)識(shí)符.
.
15
第二節(jié)??常量與變量.
.
15
第三節(jié)??基本數(shù)據(jù)類型.
.
16
第四節(jié)??運(yùn)算符.
.
18
第五節(jié)??關(guān)鍵字及注釋.
.
21
小結(jié).22
思考題23
第三章??Java程序控制.27
第一節(jié)??分支語(yǔ)句27
第二節(jié)??循環(huán)語(yǔ)句29
第三節(jié)??跳轉(zhuǎn)語(yǔ)句.
.
31
第四節(jié)??語(yǔ)句塊32
第五節(jié)??方法32
第六節(jié)??方法重載35
小結(jié).35
思考題35
第四章??Java面向?qū)ο缶幊袒A(chǔ).40
第一節(jié)??類與對(duì)象40
第二節(jié)??類的成員42
第三節(jié)??this和static
關(guān)鍵字.43
第四節(jié)??Object類.45
I
Java
程序設(shè)計(jì)
小結(jié).46
思考題47
第五章??Java面向?qū)ο缶幊踢M(jìn)階.55
第一節(jié)??類的繼承55
第二節(jié)??訪問(wèn)權(quán)限59
第三節(jié)??封裝60
第四節(jié)??多態(tài)62
第五節(jié)??抽象類64
第六節(jié)??接口66
第七節(jié)??內(nèi)部類68
小結(jié).72
思考題72
第六章??Java數(shù)組與包.74
第一節(jié)??數(shù)組74
第二節(jié)??數(shù)組的初始化75
第三節(jié)??二維和多維數(shù)組75
第四節(jié)??數(shù)組的常用操作76
第五節(jié)??Java包的概念77
小結(jié).79
思考題79
第七章??Java常用類82
第一節(jié)??字符串相關(guān)的類82
第二節(jié)??Math類.83
第三節(jié)??基本數(shù)據(jù)類型的包裝類84
第四節(jié)??時(shí)間處理相關(guān)的類85
第五節(jié)??Java中常用的集合86
小結(jié).89
思考題89
第八章??Java異常處理機(jī)制90
第一節(jié)??Java的異常90
第二節(jié)??Java異常的分類90
第三節(jié)??Java異常處理.
.
91
第四節(jié)??Java中聲明異常92
第五節(jié)??Java中自定義異常92
II
目??錄
小結(jié).93
思考題94
第九章??Java輸入
/
輸出
.
96
第一節(jié)??Java 的I/O 體系 96
第二節(jié)??Java 的文件和目錄操作 97
第三節(jié)??Java 的字符流處理 . 98
第四節(jié)??Java 字節(jié)流處理 . 100
第五節(jié)??Java 中輸入流Scanner 101
第六節(jié)??Java 中流的轉(zhuǎn)換 . 101
小結(jié) . 102
思考題 . 102
第十章??Java圖形用戶界面
.
103
第一節(jié)??Java 的GUI 概述 103
第二節(jié)??GUI 的布局器 105
第三節(jié)??GUI 的事件監(jiān)聽(tīng) 106
小結(jié) 112
思考題 112
第十一章??Java多線程技術(shù)
.
114
第一節(jié)??程序、進(jìn)程與線程 114
第二節(jié)??線程的實(shí)現(xiàn)115
第三節(jié)??線程的生命周期及狀態(tài).116
第四節(jié)??線程的同步.117
小結(jié) 119
思考題 119
第十二章??Java數(shù)據(jù)庫(kù)編程
.
121
第一節(jié)??使用JDBC 訪問(wèn)數(shù)據(jù)庫(kù) . 121
第二節(jié)??JDBC 各對(duì)象介紹 123
第三節(jié)??JDBC 常用的封裝 . 124
小結(jié) . 130
思考題 . 130
Java
程序設(shè)計(jì)
第十三章??Java網(wǎng)絡(luò)編程.
.
131
第一節(jié)??網(wǎng)絡(luò)分層 . 131
第二節(jié)??Java 中的Socket . 134
小結(jié) . 143
思考題 . 143
第十四章??Java高級(jí)技術(shù).
.
144
第一節(jié)??反射 144
第二節(jié)??泛型 151
第三節(jié)??序列化與反序列化 . 154
小結(jié) . 157
思考題 . 157
第十五章??Java.GUI
實(shí)戰(zhàn).
.
158
第一節(jié)??項(xiàng)目總覽 . 158
第二節(jié)??項(xiàng)目搭建 . 160
第三節(jié)??common 包 . 162
第四節(jié)??entity 包 168
第五節(jié)??dao 包 . 169
第六節(jié)??service 包 175
第七節(jié)??test 包 . 179
第八節(jié)??ui 包 182
小結(jié) . 208
思考題 . 208
IV