Java 從入門到精通, 6/e

明日科技

  • Java 從入門到精通, 6/e-preview-1
  • Java 從入門到精通, 6/e-preview-2
  • Java 從入門到精通, 6/e-preview-3
Java 從入門到精通, 6/e-preview-1

買這商品的人也買了...

商品描述

《Java從入門到精通(第6版)》從初學者角度出發,通過通俗易懂的語言、豐富多彩的實例,詳細講解了使用Java語言進行程序開發需要掌握的知識。全書分為23章,內容包括初識Java,熟悉Eclipse開發工具,Java語言基礎,流程控制,數組,類和對象,繼承、多態、抽象類與接口,包和內部類,異常處理,字符串,常用類庫,集合類,枚舉類型與泛型,lambda表達式與流處理,I/O(輸入/輸出),反射與註釋,數據庫操作,Swing程序設計,Java繪圖,多線程,網絡通信,奔跑吧小恐龍,MR人臉識別打卡系統。書中所有知識都結合具體實例進行講解,涉及的程序代碼都給出了詳細的註釋,可以使讀者輕松領會Java程序開發的精髓,快速提高開發技能。

作者簡介

明日科技,全稱是吉林省明日科技有限公司,是一家專業從事軟件開發、教育培訓以及軟件開發教育資源整合的高科技公司,其編寫的教材非常注重選取軟件開發中的必需、常用內容,同時也很注重內容的易學、方便性以及相關知識的拓展性,深受讀者喜愛。
其教材多次榮獲“全行業優秀暢銷品種”“全國高校出版社優秀暢銷書”等獎項,多個品種長期位居同類圖書銷售排行榜的前列。

目錄大綱

第1篇基礎知識
第1章初識Java 2
視頻講解:18分鐘
1.1 Java簡介2
1.1.1什麼是Java語言2
1.1.2 Java的應用領域3
1.1.3 Java的版本4
1.1.4怎樣學好Java 5
1.1.5 Java API文檔6
1.2 Java語言的特性6
1.3搭建Java環境8
1.3.1 JDK下載8
1.3.2在Windows 10系統下搭建JDK環境9

第2章熟悉Eclipse開發工具12
視頻講解:25分鐘
2.1熟悉Eclipse 12
2.1.1 Eclipse簡介13
2.1.2下載Eclipse 13
2.1.3安裝Eclipse的中文語言包15
2.1.4 Eclipse的配置與啟動17
2.1.5 Eclipse工作台18
2.1.6透視圖與視圖18
2.1.7菜單欄19
2.1.8工具欄23
2.1.9 “包資源管理器”視圖23
2.1.10 “控制台”視圖24
2.2使用Eclipse 24
2.2.1創建Java項目24
2.2.2創建Java類文件25
2.2.3使用編輯器編寫程序代碼26
2.2.4運行Java程序28
2.3程序調試29

第3章Java語言基礎31
視頻講解:104分鐘
3.1 Java主類結構32
3.2基本數據類型33
3.2.1整數類型33
3.2.2浮點類型35
3.2.3字符類型36
3.2.4布爾類型38
3.3變量與常量38
3.3.1標識符和關鍵字38
3.3.2聲明變量39
3.3.3聲明常量40
3.3.4變量的有效範圍41
3.4運算符43
3.4.1賦值運算符43
3.4.2算術運算符44
3.4.3自增和自減運算符45
3.4.4比較運算符45
3.4.5邏輯運算符46
3.4.6位運算符47
3.4.7三元運算符49
3.4.8運算符優先級49
3.5數據類型轉換50
3.5.1隱式類型轉換51
3.5.2顯式類型轉換52
3.6代碼註釋與編碼規範52
3.6.1代碼註釋52
3.6.2編碼規範54
3.7實踐與練習55

第4章流程控制56
視頻講解:80分鐘
4.1複合語句56
4.2條件語句57
4.2.1 if條件語句57
4.2.2 switch多分支語句60
4.3循環語句63
4.3.1 while循環語句63
4.3.2 do…while循環語句64
4.3.3 for循環語句65
4.4循環控制67
4.4.1 break語句67
4.4.2 continue語句69
4.5實踐與練習70

第5章數組72
視頻講解:80分鐘
5.1數組概述72
5.2一維數組72
5.2.1創建一維數組73
5.2.2初始化一維數組74
5.2.3使用一維數組74
5.3二維數組75
5.3.1創建二維數組75
5.3.2初始化二維數組76
5.3.3使用二維數組76
5.4數組的基本操作77
5.4.1遍歷數組77
5.4.2填充替換數組元素78
5.4.3對數組進行排序80
5.4.4複製數組81
5.4.5查詢數組82
5.5數組排序算法84
5.5.1冒泡排序84
5.5.2直接選擇排序86
5.5.3反轉排序87
5.6實踐與練習89

第2篇面向對象編程
第6章類和對象92
視頻講解:71分鐘
6.1面向對象概述92
6.1.1對象93
6.1.2類94
6.1.3封裝94
6.1.4繼承95
6.1.5多態95
6.2類96
6.2.1成員變量96
6.2.2成員方法97
6.2.3權限修飾符97
6.2.4局部變量98
6.2.5局部變量的有效範圍99
6.2.6 this關鍵字100
6.3類的構造方法101
6.4靜態變量和靜態方法102
6.5類的主方法105
6.6對象106
6.6.1對象的創建106
6.6.2訪問對象的屬性和行為108
6.6.3對象的引用108
6.6.4對象的銷毀109
6.7實踐與練習110

第7章繼承、多態、抽像類與接口112
視頻講解:100分鐘
7.1類的繼承112
7.2 Object類114
7.3對像類型的轉換117
7.3.1向上轉型117
7.3.2向下轉型118
7.4使用instanceof關鍵字判斷對像類型120
7.5方法的重載121
7.6 final關鍵字124
7.6. 1 final變量124
7.6.2 final方法125
7.6.3 final類126
7.7多態126
7.8抽像類與接口128
7.8.1抽像類128
7.8.2接口129
7.9實踐與練習131

第8章包和內部類133
視頻講解:16分鐘
8.1 Java類包133
8.1.1類名衝突133
8.1.2完整的類路徑134
8.1.3創建包134
8.1.4導入包135
8.2內部類136
8.2.1成員內部類137
8.2. 2匿名內部類139
8.3實踐與練習140

第3篇核心技術
第9章異常處理142
視頻講解:54分鐘
9.1異常概述142
9.2異常的拋出與捕捉143
9.2.1拋出異常143
9.2.2捕捉異常144
9.3 Java常見的異常類146
9.4自定義異常146
9.5在方法中拋出異常148
9.5.1使用throws關鍵字拋出異常148
9.5.2使用throw關鍵字拋出異常148
9.6運行時異常150
9.7異常的使用原則151
9.8實踐與練習151

第10章字符串152
視頻講解:113分鐘
10.1 String類152
10.1.1聲明字符串152
10.1.2創建字符串153
10.2連接字符串154
10.2.1連接多個字符串154
10.2.2連接其他數據類型154
10.3獲取字符串信息156
10.3.1獲取字符串長度156
10.3.2字符串查找156
10.3.3獲取指定索引位置的字符157
10.4字符串操作158
10.4.1獲取子字符串158
10.4.2去除空格159
10.4.3字符串替換160
10.4.4判斷字符串的開始與結尾161
10.4.5判斷字符串是否相等162
10.4.6按字典順序比較兩個字符串163
10.4.7字母大小寫轉換163
10.4.8字符串分割164
10.5格式化字符串166
10.5.1日期和時間字符串格式化166
10.5.2常規類型格式化169
10.6使用正則表達式170
10.7字符串生成器172
10.8實踐與練習174

第11章常用類庫175
視頻講解:112分鐘
11.1包裝類175
11.1.1 Integer類176
11.1.2 Double類178
11.1.3 Boolean類179
11.1.4 Character類180
11.1.5 Number類181
11.2數字處理182
11.2.1數字格式化182
11.2.2 Math類184
11.2.3 Random類188
11.2.4 BigInteger類190
11.2.5 BigDecimal類191
11.3 System類193
11.3.1控制台輸出字符193
11.3.2計時194
11.4 Scanner類195
11.5日期時間類197
11.5.1 Date類197
11.5.2日期時間格式化198
11.5.3 Calendar類201
11.6 Runtime類204
11.6.1執行本地命令204
11.6.2查看內存205
11.7實踐與練習206

第12章集合類207
視頻講解:60分鐘
12.1集合類概述207
12.2 Collection接口208
12.3 List集合209
12.3.1 List接口209
12.3.2 List接口的實現類209
12.4 Set集合210
12.5 Map集合212
12.5.1 Map接口213
12.5.2 Map接口的實現類213
12.6實踐與練習214

第13章枚舉類型與泛型216
視頻講解:61分鐘
13.1枚舉類型216
13.1.1使用枚舉類型設置常量216
13.1.2深入了解枚舉類型218
13.1.3使用枚舉類型的優勢221
13.2泛型222
13.2.1回顧向上轉型與向下轉型222
13.2.2定義泛型類223
13.2.3泛型的常規用法224
13.2.4泛型的高級用法226
13.2.5泛型總結228
13.3實踐與練習229

第14章lambda表達式與流處理230
視頻講解:92分鐘
14.1 lambda表達式230
14.1.1 lambda表達式簡介230
14.1 .2 lambda表達式實現函數式接口231
14.1.3 lambda表達式調用外部變量233
14.1.4 lambda表達式與異常處理235
14.2方法的引用237
14.2.1引用靜態方法237
14.2.2引用成員方法237
14.2 .3引用帶泛型的方法238
14.2.4引用構造方法239
14.2.5 Fuction接口242
14.3流處理243
14.3.1 Stream接口簡介244
14.3.2 Optional類246
14.3.3 Collectors類247
14.3.4數據過濾248
14.3.5數據映射252
14.3.6數據查找253
14.3.7數據收集256
14.4實踐與練習260

第15章I/O(輸入/輸出) 261
視頻講解:97分鐘
15.1輸入/輸出流261
15.1.1輸入流262
15.1.2輸出流263
15.2 File類264
15.2.1文件的創建與刪除264
15.2.2獲取文件信息266
15.3文件輸入/輸出流267
15.3.1 FileInputStream與FileOutputStream類267
15.3.2 FileReader和FileWriter類268
15.4帶緩存的輸入/輸出流269
15.4.1 BufferedInputStream與BufferedOutputStream類269
15.4.2 BufferedReader與BufferedWriter類270
15.5數據輸入/輸出流272
15.6實踐與練習273

第16章反射與註解274
視頻講解:63分鐘
16.1反射274
16.1.1訪問構造方法275
16.1.2訪問成員變量279
16.1.3訪問成員方法281
16.2 Annotation註解功能285
16.2.1定義Annotation類型285
16.2.2訪問Annotation信息288
16.3實踐與練習290

第17章數據庫操作292
視頻講解:47分鐘
17.1數據庫基礎292
17.1.1什麼是數據庫293
17.1.2數據庫的種類及功能293
17.1.3 SQL語言294
17.2 JDBC概述295
17.2.1 JDBC技術295
17.2.2 JDBC驅動程序的類型296
17.3 JDBC中常用的類和接口296
17.3.1 DriverManager類296
17.3.2 Connection接口297
17.3.3 Statement接口298
17.3.4 PreparedStatement接口298
17.3.5 ResultSet接口299
17.4數據庫操作300
17.4.1連接數據庫300
17.4.2向數據庫發送SQL語句301
17.4.3處理查詢結果集301
17.4.4順序查詢302
17.4.5模糊查詢303
17.4.6預處理語句304
17.4.7添加、修改、刪除記錄305
17.5實踐與練習308

第18章Swing程序設計310
視頻講解:229分鐘
18.1 Swing概述311
18.2 Swing常用窗體312
18.2.1 JFrame窗體312
18.2.2 JDialog對話框314
18.2.3 JOptionPane小型對話框315
18.3常用佈局管理器319
18.3.1 null絕對佈局320
18.3.2 FlowLayout流佈局管理器320
18.3.3 BorderLayout邊界佈局管理器322
18.3.4 GridLayout網格佈局管理器323
18.4常用面板324
18.4.1 JPanel面板324
18.4.2 JScrollPane滾動面板326
18.5文字標籤組件與圖標327
18.5.1 JLabel標籤327
18.5.2圖標的使用328
18.6按鈕組件329
18.6.1 JButton按鈕330
18.6.2 JRadioButton單選按鈕331
18.6.3 JCheckBox複選框333
18.7列表組件334
18.7.1 JComboBox下拉列錶框334
18.7.2 JList列錶框336
18.8文本組件337
18.8.1 JTextField文本框338
18.8 .2 JPasswordField密碼框339
18.8.3 JTextArea文本域339
18.9表格組件340
18.9.1創建表格341
18.9.2 DefaultTableModel表格數據模型342
18.9.3維護表格模型343
18.10事件監聽器345
18.10.1 ActionEvent動作事件346
18.10.2 KeyEvent鍵盤事件347
18.10.3 MouseEvent鼠標事件349
18.11實踐與練習351

第19章Java繪圖352
視頻講解:84分鐘
19.1 Java繪圖類352
19.1.1 Graphics類352
19.1.2 Graphics2D類353
19.2繪製圖形353
19.3繪圖顏色與畫筆屬性357
19.3.1設置顏色357
19.3.2設置畫筆358
19.4繪製文本359
19.4.1設置字體359
19.4.2顯示文字360
19.5顯示圖片361
19.6圖像處理363
19.6.1放大與縮小363
19.6.2圖像翻轉365
19.6.3圖像旋轉367
19.6.4圖像傾斜368
19.7實踐與練習370

第20章多線程371
視頻講解:45分鐘
20.1線程簡介371
20.2創建線程372
20.2.1繼承Thread類372
20.2.2實現Runnable接口373
20.3線程的生命週期376
20.4操作線程的方法377
20.4.1線程的休眠377
20.4.2線程的加入378
20.4. 3線程的中斷380
20.4.4線程的禮讓381
20.5線程的優先級382
20.6線程同步383
20.6.1線程安全384
20.6.2線程同步機制385
20.7實踐與練習387

第21章網絡通信388
視頻講解:60分鐘
21.1網絡程序設計基礎388
21.1.1局域網與互聯網388
21.1.2網絡協議389
21.1.3端口與套接字390
21.2 TCP程序391
21.2.1 InetAddress類391
21.2.2 ServerSocket類392
21.2.3 TCP網絡程序設計393
21.3 UDP程序397
21.3.1 DatagramPacket類397
21.3.2 DatagramSocket類398
21.3.3 UDP網絡程序設計398
21.4實踐與練習402

第4篇項目實戰
第22章奔跑吧小恐龍404
視頻講解:53分鐘
22.1開發背景404
22.2系統結構設計405
22.2.1系統功能結構405
22.2.2系統業務流程405
22.3項目目錄結構預覽406
22.4遊戲模型設計406
22.4.1恐龍類406
22.4.2障礙類409
22.5音效模塊設計411
22.5.1音頻播放器411
22.5.2音效工具類413
22.6計分器模塊設計413
22.7視圖模塊設計416
22.7.1主窗體417
22.7.2遊戲面板418
22.7.3成績對話框420
22.8遊戲核心功能設計421
22.8.1刷新幀421
22.8.2滾動背景422
22.8.3碰撞檢測424
22.8.4鍵盤監聽425

第23章MR人臉識別打卡系統426
視頻講解:145分鐘
23.1需求分析426
23.2系統設計427
23.2.1開發環境427
23.2.2系統功能結構427
23.2.3系統業務流程428
23.3數據庫與數據表設計428
23.3.1數據庫分析428
23.3.2數據表設計429
23.4系統文件夾組織結構430
23.5工具類設計432
23.5.1日期時間工具類432
23.5.2數據庫連接工具類434
23.6實體類設計436
23.7數據庫接口及實現類設計437
23.7.1數據庫接口438
23.7.2基於MySQL的數據庫接口實現類439
23.7.3數據庫接口工廠類443
23.8全局會話類設計443
23.9服務類設計445
23.9.1攝像頭服務445
23.9.2人臉識別服務446
23.9.3人事服務449
23.9.4圖像文件服務457
23.10窗體類設計458
23.10.1主窗體458
23.10.2主面板460
23.10.3登錄對話框464
23.10.4考勤報表面板465
23.10.5員工管理面板470
23.10.6錄入新員工面板472
23.11常見問題與解決474
23.11.1如何運行項目474
23.11.2無法激活人臉識別引擎475
23.11.3無法連接MySQL數據庫475
23.11.4如何切換成SQLite數據庫475