Java基礎入門(第4版)
黑馬程序員
商品描述
"本書為Java基礎入門圖書,共15章。第1章為Java開發入門,融入AI編程助手的內容,從而提升學習效果;第2~8章主要講解Java編程的基礎知識,包括Java編程基礎、面向對象、異常、Java API、集合、泛型等知識;第9~14章主要講解Java編程的進階知識,包括反射機制和註解、I/O、JDBC、多線程、網絡編程、圖形用戶界面等知識;第15章基於圖形用戶界面實現一個綜合項目——客戶關系管理系統,幫助讀者將所學的知識融會貫通。 本書配套資源包括源代碼、題庫、教學課件和思政閱讀材料等。 本書可作為高等院校計算機相關專業的Java語言入門教材,也可作為自學編程人員的參考書。 "
作者簡介
黑馬程序員,傳智播客旗下高端教育品牌,成立於2006年,它是由中國Java培訓先行者張孝祥老師發起,聯合中文IT社區CSDN、中關村軟件園共同創辦的一家專業教育機構。辦學至今,我們一直堅守著“為千萬人少走彎路而著書,為中華軟件之崛起而講課”的辦學理念,堅持培養優秀軟件應用工程師的宏偉目標,在累計培養的十萬餘名學員中。
目錄大綱
目錄
第1章Java開發入門1
1.1Java概述1
1.1.1什麼是Java1
1.1.2Java的特點2
1.2Java環境搭建2
1.2.1下載與安裝JDK2
1.2.2配置Path環境變量5
1.3第一個Java程序8
1.4Java程序的運行機制11
1.5IntelliJ IDEA開發工具11
1.5.1IntelliJ IDEA的安
裝與啟動11
1.5.2使用IntelliJ IDEA
進行開發13
1.5.3IntelliJ IDEA調試
工具17
1.6AI編程助手18
1.6.1AI編程助手概述18
1.6.2AI編程助手快速
入門19
1.7本章小結25
1.8本章習題26
第2章Java編程基礎27
2.1Java基本語法27
2.1.1Java程序的基本
格式27
2.1.2Java中的註釋28
2.1.3Java中的標識符29
2.1.4Java中的關鍵字30
2.1.5Java中的字面量31
2.2Java中的變量32
2.2.1變量的定義32
2.2.2變量的數據類型33
2.2.3變量的類型轉換35
2.2.4變量的作用域38
2.3Java中的運算符39
2.3.1算術運算符39
2.3.2賦值運算符40
2.3.3比較運算符41
2.3.4邏輯運算符42
2.3.5運算符的優先級43
2.4選擇結構語句44
2.4.1if語句44
2.4.2三元運算符48
2.4.3switch語句49
2.5循環結構語句51
2.5.1while循環語句51
2.5.2do…while循環語句52
2.5.3for循環語句53
2.5.4循環嵌套55
2.5.5跳轉語句56
2.6方法58
2.6.1什麼是方法58
2.6.2方法的重載60
2.7數組61
2.7.1數組的聲明和初
始化61
2.7.2數組元素的訪問
和賦值63
2.7.3數組的常見操作66
2.7.4二維數組70
2.8本章小結72
2.9本章習題72
第3章面向對象(上)73
3.1面向對象的思想73
3.2類與對象74
3.2.1類的定義74
3.2.2對象的創建與使用75
3.2.3對象的引用傳遞77
3.2.4訪問控制權限79
3.3封裝性80
3.3.1為什麼要封裝80
3.3.2如何實現封裝81
3.4構造方法82
3.4.1定義構造方法82
3.4.2構造方法的重載83
3.5this關鍵字85
3.5.1使用this關鍵字調用
本類中的屬性85
3.5.2使用this關鍵字調用
成員方法87
3.5.3使用this關鍵字調用
構造方法87
3.6代碼塊88
3.6.1普通代碼塊88
3.6.2構造塊89
3.7static關鍵字89
3.7.1靜態屬性89
3.7.2靜態方法92
3.7.3靜態代碼塊93
3.8本章小結94
3.9本章習題94
第4章面向對象(下)95
4.1繼承95
4.1.1繼承的概念95
4.1.2方法的重寫98
4.1.3super關鍵字100
4.2final關鍵字103
4.2.1final關鍵字修飾類103
4.2.2final關鍵字修飾
方法103
4.2.3final關鍵字修飾
變量104
4.3抽象類和接口105
4.3.1抽象類105
4.3.2接口106
4.4多態110
4.4.1多態概述111
4.4.2對象類型轉換112
4.4.3instanceof關鍵字113
4.5Object類114
4.6內部類116
4.6.1成員內部類117
4.6.2局部內部類118
4.6.3靜態內部類119
4.6.4匿名內部類120
4.7函數式編程121
4.7.1Lambda表達式和
函數式接口121
4.7.2方法引用123
4.8本章小結127
4.9本章習題127
第5章異常128
5.1什麼是異常128
5.2運行時異常與編譯時異常130
5.3異常處理及語法131
5.3.1異常的產生及處理131
5.3.2try…catch語句131
5.3.3finally語句133
5.4拋出異常134
5.4.1throws關鍵字134
5.4.2throw關鍵字136
5.5自定義異常類138
5.6本章小結140
5.7本章習題140
第6章Java API141
6.1包裝類141
6.2字符串類143
6.2.1String類143
6.2.2String類的常用
方法145
6.2.3StringBuffer類151
6.3System類154
6.4Math類和Random類156
6.4.1Math類156
6.4.2Random類158
6.5BigInteger類和
BigDecimal類160
6.6日期和時間類162
6.6.1Date類162
6.6.2LocalDate類和
LocalTime類162
6.6.3LocalDateTime類165
6.7日期時間格式化類166
6.7.1SimpleDateFormat類166
6.7.2DateTimeFormatter類168
6.8正則表達式169
6.9本章小結172
6.10本章習題172
第7章集合173
7.1集合概述173
7.2Collection接口174
7.3List接口174
7.3.1List接口簡介174
7.3.2ArrayList175
7.3.3LinkedList176
7.4集合遍歷178
7.4.1Iterator接口178
7.4.2foreach循環181
7.5Set接口183
7.5.1Set接口簡介183
7.5.2HashSet183
7.5.3LinkedHashSet186
7.5.4TreeSet186
7.6Map接口191
7.6.1Map接口簡介191
7.6.2HashMap192
7.6.3LinkedHashMap194
7.6.4TreeMap195
7.6.5Properties197
7.7常用工具類198
7.7.1Collections工具類198
7.7.2Arrays工具類200
7.8Stream203
7.9本章小結206
7.10本章習題206
第8章泛型207
8.1泛型基礎207
8.1.1泛型概述207
8.1.2使用泛型的好處209
8.2泛型類210
8.3泛型接口211
8.4泛型方法213
8.4.1泛型方法概述213
8.4.2泛型方法的應用213
8.5類型通配符215
8.5.1類型通配符概述215
8.5.2類型通配符的限定216
8.6本章小結218
8.7本章習題218
第9章反射機制和註解219
9.1反射概述219
9.2Class類和Class對象220
9.3反射的常見操作222
9.3.1基於反射操作構造
方法222
9.3.2基於反射操作成員
方法224
9.3.3基於反射操作成員
變量227
9.4註解229
9.4.1內置註解229
9.4.2自定義註解和元
註解230
9.5本章小結235
9.6本章習題235
第10章I/O236
10.1File類236
10.1.1創建File對象236
10.1.2File類的常用
方法237
10.1.3遍歷目錄下的
文件239
10.1.4刪除文件及目錄241
10.2字節流243
10.2.1字節流的概念243
10.2.2字節流讀文件245
10.2.3字節流寫文件246
10.2.4文件的復制248
10.3字符流250
10.3.1字符流定義及基本
用法250
10.3.2字符流讀文件251
10.3.3字符流寫文件251
10.4轉換流252
10.5序列化和反序列化254
10.6本章小結255
10.7本章習題255
第11章JDBC256
11.1什麼是JDBC256
11.1.1JDBC概述256
11.1.2JDBC驅動程序257
11.2JDBC的常用API258
11.3JDBC編程262
11.4數據庫連接池 265
11.5DbUtils266
11.6本章小結268
11.7本章習題268
第12章多線程269
12.1進程與線程269
12.1.1進程269
12.1.2線程270
12.2線程的創建271
12.2.1繼承Thread類創建
多線程272
12.2.2實現Runnable接口
創建多線程273
12.2.3實現Callable接口
創建多線程274
12.2.4Thread類與Runnable
接口實現多線程的
對比275
12.3線程的生命周期及狀態
轉換278
12.4線程操作的相關方法279
12.4.1線程的優先級279
12.4.2線程插隊281
12.4.3線程讓步283
12.5線程同步284
12.5.1線程安全284
12.5.2同步代碼塊285
12.5.3同步方法287
12.5.4死鎖問題288
12.5.5重入鎖289
12.6本章小結291
12.7本章習題291
第13章網絡編程292
13.1網絡基礎292
13.1.1網絡通信協議292
13.1.2TCP與UDP293
13.1.3IP地址和端口號294
13.1.4InetAddress類295
13.1.5URL編程296
13.2TCP通信298
13.2.1ServerSocket類298
13.2.2Socket類299
13.2.3簡單的TCP
通信300
13.2.4多線程的TCP
網絡程序302
13.3UDP通信304
13.3.1DatagramPacket類304
13.3.2DatagramSocket類305
13.3.3簡單的UDP通信306
13.3.4多線程的UDP
網絡程序309
13.4本章小結311
13.5本章習題311
第14章圖形用戶界面312
14.1Swing概述312
14.2Swing的常見組件314
14.2.1頂級容器組件314
14.2.2面板組件315
14.2.3標簽組件和文本
組件317
14.2.4下拉框組件和按
鈕組件319
14.2.5菜單組件322
14.3布局管理器323
14.4事件處理機制325
14.5JavaFX327
14.5.1JavaFX簡介327
14.5.2Scene Builder的安裝
和配置330
14.5.3JavaFX入門程序331
14.6本章小結336
14.7本章習題336
第15章綜合項目: 客戶關系管理
系統33715.1項目開發準備337
15.1.1項目概述337
15.1.2數據庫設計340
15.1.3項目環境搭建340
15.2用戶登錄342
15.3客戶信息342
15.4個人信息343
15.4.1修改賬號信息343
15.4.2修改密碼343
15.5登錄管理343
15.6本章小結343
附錄基於AI編程助手智能問答實現案例的提問參考344



