熟練掌握J(rèn)ava語(yǔ)言是Java應(yīng)用開(kāi)發(fā)的第一個(gè)臺(tái)階,能夠深入理解Java程序設(shè)計(jì),是學(xué)習(xí)Java系列技術(shù)的必要前提。本書結(jié)合編者多年的開(kāi)發(fā)和教學(xué)經(jīng)驗(yàn),從入門者的學(xué)習(xí)特點(diǎn)出發(fā),循序漸進(jìn)地帶領(lǐng)讀者走進(jìn)Java世界,使得"開(kāi)頭并不難”。 全書分為7個(gè)部分,包括Java語(yǔ)言的類、類之間的關(guān)系、異常處理、核心API的使用、特性總結(jié)、JDK8及以后版本特性總結(jié)和編程實(shí)戰(zhàn)。其中,編程實(shí)戰(zhàn)部分提供了連連看游戲的完整實(shí)現(xiàn)過(guò)程,幫助讀者借助教材自主實(shí)現(xiàn)該案例,快速提高Java程序設(shè)計(jì)實(shí)踐能力。書中內(nèi)容打破了傳統(tǒng)的堆砌知識(shí)點(diǎn)的方式,從解決問(wèn)題的角度詮釋面向?qū)ο蟪绦蛟O(shè)計(jì),涵蓋了企業(yè)實(shí)際工作中常用的技能與知識(shí)點(diǎn),簡(jiǎn)單明了,易讀易懂。
孫祥,是臨沂科技職業(yè)學(xué)院計(jì)算機(jī)應(yīng)用技術(shù)專業(yè)帶頭人,具有十余年軟件開(kāi)發(fā)、企業(yè)管理經(jīng)驗(yàn),曾任職技術(shù)總監(jiān)、副總經(jīng)理等管理崗位,主導(dǎo)參與過(guò)金鑼集團(tuán)、碧生源集團(tuán)、魯西化工集團(tuán)等十余家集團(tuán)企業(yè)信息化建設(shè)。長(zhǎng)期從事軟件架構(gòu)、軟件開(kāi)發(fā)、電子支付相關(guān)工作,具有豐富的實(shí)踐經(jīng)驗(yàn),發(fā)表學(xué)術(shù)論文2篇,獲得臨沂市科學(xué)技術(shù)獎(jiǎng)叁等獎(jiǎng)一項(xiàng)。
目錄
第一部分 Java語(yǔ)言的類
第1章 Java語(yǔ)言概述 002
1.1 Java語(yǔ)言的特點(diǎn) 002
1.2 面向?qū)ο蟮幕靖拍?003
1.3 第一個(gè)Java類 004
1.3.1 環(huán)境搭建 004
1.3.2 編譯運(yùn)行Java類 006
1.4 本章小結(jié) 007
第2章 Java類的組成 008
2.1 類 008
2.2 屬性 009
2.3 方法 009
2.3.1 方法的聲明形式 009
2.3.2 方法重載 010
2.4 構(gòu)造方法 011
2.5 塊 014
2.6 內(nèi)部類 015
2.7 本章小結(jié) 015
第3章 訪問(wèn)權(quán)限修飾符 016
3.1 包 016
3.2 4種訪問(wèn)權(quán)限修飾符 017
3.3 封裝性 017
3.4 本章小結(jié) 018
第4章 數(shù)據(jù)類型 019
4.1 基本數(shù)據(jù)類型 019
4.2 引用類型 020
4.3 字符串類型 020
4.4 包裝器類型 021
4.5 值傳遞 022
4.6 本章小結(jié) 023
第5章 高級(jí)類特性 024
5.1 static修飾符 024
5.2 final修飾符 027
5.3 Java類中的變量總結(jié) 028
5.4 本章小結(jié) 029
第6章 操作符、流程控制 030
6.1 操作符 030
6.2 流程控制 034
6.2.1 流程控制概述 034
6.2.2 使用break/continue語(yǔ)句控制循環(huán) 037
6.2.3 “中斷”語(yǔ)句比較 038
6.3 本章小結(jié) 039
第7章 第一部分自我測(cè)試 040
第二部分 類之間的關(guān)系
第8章 關(guān)聯(lián)關(guān)系 044
8.1 關(guān)聯(lián)關(guān)系的表示 044
8.2 關(guān)聯(lián)關(guān)系的方向 045
8.3 關(guān)聯(lián)關(guān)系的多重性 046
8.4 數(shù)組 046
8.4.1 數(shù)組的基本概念 046
8.4.2 數(shù)組的創(chuàng)建及長(zhǎng)度 047
8.4.3 數(shù)組元素的訪問(wèn) 048
8.4.4 數(shù)組的賦值 049
8.4.5 多維數(shù)組 049
8.4.6 數(shù)組的復(fù)制 050
8.4.7 Arrays類 051
8.5 本章小結(jié) 052
第9章 依賴關(guān)系 053
9.1 Java語(yǔ)言中依賴關(guān)系的表示 053
9.2 依賴與關(guān)聯(lián)的區(qū)別 053
9.3 本章小結(jié) 054
第10章 繼承關(guān)系 055
10.1 Java語(yǔ)言的繼承 055
10.2 繼承中構(gòu)造方法的調(diào)用 056
10.3 方法覆蓋 059
10.4 抽象類 061
10.5 抽象方法 062
10.6 多態(tài)性 063
10.7 this和super關(guān)鍵字 065
10.8 final在繼承中的使用 066
10.9 static、abstract、final修飾符總結(jié) 067
10.10 關(guān)聯(lián)和繼承 067
10.11 Object類 068
10.12 本章小結(jié) 071
第11章 實(shí)現(xiàn)關(guān)系 072
11.1 接口的定義 072
11.2 類與接口之間的關(guān)系:實(shí)現(xiàn) 072
11.3 接口的作用 074
11.4 接口的語(yǔ)法細(xì)節(jié) 075
11.5 Comparable接口 076
11.6 本章小結(jié) 079
第12章 第二部分自我測(cè)試 080
第三部分 異 常 處 理
第13章 Java應(yīng)用異常處理 085
13.1 異常概述 085
13.2 Java標(biāo)準(zhǔn)異常類型 086
13.3 處理異常 087
13.4 拋出異常 092
13.5 為何要拋出異常 092
13.6 如何處理拋出的異常 093
13.7 自定義異常類 095
13.8 throw與throws總結(jié) 096
13.9 try-finally的作用 097
13.10 再次拋出異常 098
13.11 本章小結(jié) 098
第14章 第三部分自我測(cè)試 099
第四部分 核心API的使用
第15章 集合框架 104
15.1 泛型快速入門 104
15.2 Java集合框架概述 106
15.3 Iterator接口 106
15.4 Collection接口及其子接口 107
15.5 List接口的實(shí)現(xiàn)類 108
15.6 Set接口的實(shí)現(xiàn)類 109
15.7 Map接口的實(shí)現(xiàn)類 113
15.8 Collections類 116
15.9 集合與數(shù)組之間的轉(zhuǎn)換 116
15.10 本章小結(jié) 118
第16章 輸入/輸出系統(tǒng) 119
16.1 File類 119
16.2 文件過(guò)濾器 120
16.3 I/O流的分類 122
16.4 I/O編程 123
16.5 本章小結(jié) 126
第17章 GUI編程 127
17.1 GUI編程概述 127
17.2 Swing中的組件 128
17.3 Swing中的布局 129
17.4 Swing中的事件處理 131
17.5 使用內(nèi)部類進(jìn)行事件處理 132
17.6 使用匿名內(nèi)部類進(jìn)行事件處理 133
17.7 GUI中的并發(fā)任務(wù) 134
17.8 本章小結(jié) 135
第18章 多線程編程 136
18.1 與線程有關(guān)的API 136
18.2 創(chuàng)建線程 137
18.3 線程同步 140
18.4 線程通信 142
18.5 Thread類的方法 145
18.6 線程死鎖 146
18.7 守護(hù)線程 148
18.8 本章小結(jié) 148
第19章 Java網(wǎng)絡(luò)編程 149
19.1 TCP/IP概述 149
19.2 使用Socket進(jìn)行基于TCP的 編程 150
19.3 使用Datagram進(jìn)行基于UDP的 編程 154
19.4 本章小結(jié) 155
第20章 其他常用API 157
20.1 日期 157
20.2 國(guó)際化 160
20.3 格式化 163
20.4 大數(shù)據(jù)類型 165
20.5 反射 166
20.6 本章小結(jié) 168
第21章 第四部分自我測(cè)試 169
第五部分 特 性 總 結(jié)
第22章 泛型 174
22.1 泛型概述 174
22.2 定義簡(jiǎn)單泛型類 175
22.3 泛型與繼承 175
22.4 通配符 176
22.5 泛型方法 177
22.6 本章小結(jié) 177
第23章 枚舉 178
23.1 枚舉概述 178
23.2 創(chuàng)建枚舉 180
23.3 Enum類 180
23.4 遍歷Enum的值 181
23.5 Enum的細(xì)節(jié)問(wèn)題 181
23.6 本章小結(jié) 182
第24章 其他特性 183
24.1 增強(qiáng)for循環(huán) 183
24.2 自動(dòng)裝箱、自動(dòng)拆箱 184
24.3 靜態(tài)導(dǎo)入 185
24.4 可變參數(shù) 185
24.5 Annotation 186
24.6 本章小結(jié) 187
第25章 第五部分自我測(cè)試 188
第六部分 JDK8及以后版本特性總結(jié)
第26章 Lambda表達(dá)式 192
26.1 Lambda表達(dá)式的基本語(yǔ)法 192
26.2 函數(shù)式接口 193
26.3 變量作用域 194
26.4 方法引用 195
26.5 本章小結(jié) 197
第27章 Stream 198
27.1 Stream概述 198
27.2 創(chuàng)建Stream 199
27.3 Stream的中間操作 200
27.4 Stream的終端操作 201
27.5 串行流與并行流 203
27.6 本章小結(jié) 203
第28章 Optional類 204
28.1 Optional類入門 204
28.2 Optional類中的方法 205
28.3 創(chuàng)建Optional對(duì)象 206
28.4 獲取Optional中的值 206
28.5 本章小結(jié) 207
第29章 日期和時(shí)間API 208
29.1 更新的日期和時(shí)間API概述 208
29.2 本地化日期和時(shí)間API 210
29.3 使用時(shí)區(qū)的日期和時(shí)間API 215
29.4 操縱、解析和格式化日期 217
29.5 本章小結(jié) 222
第30章 第六部分自我測(cè)試 223
第七部分 編 程 實(shí) 戰(zhàn)
第31章 連連看游戲?qū)崿F(xiàn) 227
31.1 搭建工程基本結(jié)構(gòu) 227
31.2 實(shí)現(xiàn)靜態(tài)界面 229
31.2.1 搭建只顯示菜單的 界面 230
31.2.2 實(shí)現(xiàn)展現(xiàn)游戲場(chǎng)景和
時(shí)間條的面板 232
31.2.3 將面板添加到游戲框架 235
31.3 隨機(jī)生成游戲場(chǎng)景 236
31.3.1 創(chuàng)建抽象類 AbstractGameModel 236
31.3.2 創(chuàng)建實(shí)現(xiàn)類 GameModelDefault 239
31.3.3 隨機(jī)產(chǎn)生游戲場(chǎng)景 240
31.4 實(shí)現(xiàn)直連消除版本 241
31.4.1 修改AbstractGameModel類 241
31.4.2 修改GameModelDefault類 243
31.4.3 修改MainPanel類 244
31.4.4 啟動(dòng)MainPanel類創(chuàng)建的 線程對(duì)象 248
31.5 實(shí)現(xiàn)一折相連消除版本 249
31.5.1 創(chuàng)建Node類封裝折點(diǎn) 信息 249
31.5.2 修改AbstractGameModel類 251
31.5.3 創(chuàng)建子類 GameModelOneTurn 252
31.5.4 修改MainPanel類 252
31.6 實(shí)現(xiàn)兩折相連消除版本 253
31.6.1 在AbstractGameModel類中添加新算法 254
31.6.2 創(chuàng)建新的模型子類 GameModelTwoTurn 255
31.6.3 修改MainPanel類 255
31.7 添加限時(shí)功能 256
31.8 添加重新開(kāi)始游戲功能 258
31.9 添加可選擇關(guān)卡功能 258
31.9.1 在AbstractGameModel類中實(shí)現(xiàn)算法 259
31.9.2 修改MainPanel類 259
31.9.3 修改MainFrame類 260
31.10 添加可選擇模型功能 261
31.11 添加可選擇圖標(biāo)功能 261
31.12 本章小結(jié) 262
附錄A 企業(yè)關(guān)注的技能 263
A.1 Java語(yǔ)言的類 263
A.2 類之間的關(guān)系 268
A.3 異常處理 272
A.4 核心API的使用 273
A.5 特性總結(jié) 278