零基礎學Java 全彩版

零基礎學Java 全彩版

《零基礎學Java》 從零基礎學習者的角度出發,通過通俗易懂的語言、流行有趣的實例,詳細地介紹了使用Java語言進行程式開發需要掌握的知識和技術。

主要內容

全書共分16章,包括初識Java、Java語言基礎、流程控制、數組、面向對象編程基礎、異常處理、Java常用類和枚舉類型、泛型與集合類及坦克大戰遊戲等。書中所有知識都結合具體實例進行講解,設計的程式代碼給出了詳細的注釋,可以使讀者輕鬆領會Java程式開發的精髓,快速提高開發技能。

本書通過大量實例及一個完整項目案例,可以幫助讀者更好地鞏固所學知識,提升能力;隨書附贈的《小白實戰手冊》中給出了3個流行案例的詳細開發流程,力求讓學習者能學以致用,真正獲得開發經驗;附贈的光碟中給出視頻講解、實例及項目源碼、代碼查錯器、練一練和動手糾錯答案等,方便讀者學習;書中設定了超過200多個二維碼,掃描二維碼觀看視頻講解,解決學習疑難;不易理解的專業術語、代碼難點只需手機掃描文字下方的e學碼獲得更多擴展解釋,隨時掃除學習障礙。此外,登錄明日學院網站還可以獲得更多學習資源和技術支持。

目錄

第1篇 基礎知識

第1章初識Java..............2

視頻講解:47分

精彩實例:1個

e學碼:69個

1.1 Java簡介.............................3

1.1.1 什麼是Java .....................3

1.1.2 Java的版本 .....................3

1.1.3 Java API文檔 ...................4

1.2 搭建Java環境.........................5

1.2.1 JDK的下載 ......................5

1.2.2 JDK的安裝 ......................7

1.2.3 配置JDK ........................8

1.2.4 測試開發環境 ...................9

1.3 第一個Java程式......................10

1.4 Eclipse開發環境.....................11

1.4.1 Eclipse簡介 ...................11

1.4.2 下載Eclipse ...................11

1.4.3 Eclipse的配置與啟動 ...........14

1.4.4 Eclipse工作檯 .................15

1.4.5 導入項目檔案 ..................15

1.5 Eclipse的使用.......................17

1.5.1 創建Java項目 ..................17

1.5.2 創建Java類檔案 ................19

1.5.3 使用編輯器編寫程式代碼 ........20

1.5.4 運行Java程式 ..................22

1.6 程式調試............................23

1.7 難點解答............................25

1.7.1 JDK常用的基本組件 .............25

1.7.2 配置環境變數後,javac運行正常,

但編譯的時候仍找不到檔案 ......25

1.8 小結................................26

1.9 動手糾錯............................26

第2章 Java語言基礎.........27

視頻講解:2小時13分

精彩實例:12個

e學碼:71個

2.1 代碼注釋............................28

2.2 變數與常量..........................29

2.2.1 標識符與關鍵字 ................29

2.2.2 變數 ..........................30

2.2.3 常量 ..........................31

2.3 基本數據類型........................31

2.3.1 整數類型 ......................32

2.3.2 浮點類型 ......................34

2.3.3 字元類型 ......................35

2.3.4 布爾類型 ......................37

2.4 數據類型轉換........................38

2.4.1 隱式轉換 ......................39

2.4.2 顯式轉換 ......................40

2.5 運算符..............................42

2.5.1 賦值運算符 ....................42

2.5.2 算術運算符 ....................43

2.5.3 自增和自減運算符 ..............44

2.5.4 關係運算符 ....................46

2.5.5 邏輯運算符 ....................47

2.5.6 位運算符 ......................49

2.5.7 複合賦值運算符 ................52

2.5.8 三元運算符 ....................53

2.5.9 圓括弧 ........................53

2.5.10 運算符優先權 .................54

2.6 難點解答............................55

2.6.1 Java中變數一定要初始化嗎? ....55

2.6.2 變數與常量的區別 ..............55

2.7 小結................................55

2.8 動手糾錯............................56

第3章 流程控制.............57

視頻講解:2小時27分

精彩實例:11個

e學碼:36個

3.1 程式結構............................58

3.2 條件語句............................58

3.2.1 if條件語句 ....................58

3.2.2 switch多分支語句 ..............63

3.3 循環語句............................67

3.3.1 while循環語句 .................67

3.3.2 do…while循環語句 .............68

3.3.3 for循環語句 ...................70

3.3.4 foreach語句 ...................72

3.3.5 循環語句的嵌套 ................73

3.4 跳轉語句............................75

3.4.1 break語句 .....................75

3.4.2 continue語句 ..................77

3.5 難點解答............................79

3.5.1 if、else、else if後的條件執行體 ..79

3.5.2 switch多分支語句後expression

表達式的數據類型 ..............79

3.6 小結................................79

3.7 動手糾錯............................79

第4章 數組.................81

視頻講解:1小時24分

精彩實例:7個

e學碼:18個

4.1 數組的概述..........................82

4.2 一維數組............................82

4.2.1 創建一維數組 ..................82

4.2.2 給一維數組賦值 ................83

4.2.3 獲取數組長度 ..................84

4.2.4 一維數組的使用場景 ............85

4.3 二維數組............................86

4.3.1 創建二維數組 ..................87

4.3.2 給二維數組賦值 ................88

4.3.3 二維數組的使用場景 ............89

4.3.4 不規則數組 ....................91

4.4 數組的基本操作......................92

4.4.1 遍歷數組 ......................92

4.4.2 填充和批量替換數組元素 ........93

4.5 難點解答............................95

4.5.1 為什麼數組的索引從0開始 .......95

4.5.2 多維數組的長度 ................95

4.6 小結................................95

4.7 動手糾錯............................95

第5章 字元串...............97

視頻講解:2小時43分

精彩實例:20個

e學碼:19個

5.1 String類............................98

5.1.1 聲明字元串 ....................98

5.1.2 創建字元串 ....................98

5.2 字元串的連線.......................100

5.2.1 連線字元串 ...................100

5.2.2 連線其他數據類型 .............102

5.3 提取字元串信息.....................104

5.3.1 獲取字元串長度 ...............104

5.3.2 獲取指定位置的字元 ...........105

5.3.3 獲取子字元串索引位置 .........106

5.3.4 判斷字元串首尾內容 ...........107

5.3.5 獲取字元數組 .................109

5.3.6 判斷子字元串是否存在 .........111

5.4 字元串的操作.......................112

5.4.1 截取字元串 ...................112

5.4.2 字元串替換 ...................113

5.4.3 字元串分割 ...................114

5.4.4 大小寫轉換 ...................115

5.4.5 去除空白內容 .................117

5.4.6 比較字元串是否相等 ...........118

5.5 可變字元串StringBuffer類...........119

5.6 難點解答...........................125

5.6.1 字元串與String類 .............125

5.6.2 StringBuffer與String的

不同之處 .....................125

5.7 小結...............................126

5.8 動手糾錯...........................126

第6章 面向對象編程基礎....127

視頻講解:1小時45分

精彩實例:9個

e學碼:20個

6.1 面向對象概述.......................128

6.1.1 對象 .........................128

6.1.2 類 ...........................128

6.1.3 面向對象程式設計的特點 .......129

6.2 類與對象...........................131

6.2.1 成員變數 .....................131

6.2.2 成員方法 .....................132

6.2.3 構造方法 .....................136

6.2.4 局部變數 .....................137

6.2.5 this關鍵字 ...................138

6.3 static關鍵字.......................142

6.3.1 靜態變數 .....................142

6.3.2 靜態方法 .....................144

6.3.3 靜態代碼塊 ...................146

6.4 類的主方法.........................147

6.5 難點解答...........................149

6.5.1 把數據抽象成類 ...............149

6.5.2 局部變數和全局變數 ...........149

6.6 小結...............................149

6.7 動手糾錯...........................150

第2篇 核心技術

第7章 面向對象核心技術....152

視頻講解:3小時13分

精彩實例:18個

e學碼:22個

7.1 類的封裝...........................153

7.2 類的繼承...........................155

7.2.1 extends關鍵字 ................155

7.2.2 方法的重寫 ...................157

7.2.3 所有類的父類——Object類 .....159

7.3 類的多態...........................162

7.3.1 方法的重載 ...................162

7.3.2 向上轉型 .....................164

7.3.3 向下轉型 .....................166

7.3.4 instanceof關鍵字 .............167

7.4 抽象類與接口.......................169

7.4.1 抽象類與抽象方法 .............169

7.4.2 接口的聲明及實現 .............171

7.4.3 多重繼承 .....................174

7.4.4 區分抽象類與接口 .............175

7.5 訪問控制...........................176

7.5.1 訪問控制符 ...................176

7.5.2 Java類包 .....................177

7.5.3 final關鍵字 ..................179

7.6 內部類.............................183

7.6.1 成員內部類 ...................183

7.6.2 匿名內部類 ...................185

7.7 難點解答...........................186

7.7.1 類的三大特性 .................186

7.7.2 什麼情況下會使用匿名內部類? .186

7.8 小結...............................187

7.9 動手糾錯...........................187

第8章 異常處理............189

視頻講解:57分

精彩實例:5個

e學碼:11個

8.1 異常概述...........................190

8.2 捕捉處理異常.......................191

8.2.1 try-catch代碼塊 ..............191

8.2.2 finally代碼塊 ................194

8.3 在方法中拋出異常...................195

8.3.1 使用throws關鍵字拋出異常 .....196

8.3.2 使用throw關鍵字拋出異常 ......197

8.4 難點解答...........................199

8.4.1 throws關鍵字和throw關鍵字的區別 .........................199

8.4.2 異常的使用原則 ...............199

8.5 小結...............................200

8.6 動手糾錯...........................200

第9章 Java常用類和枚舉類型................201

視頻講解:1小時49分

精彩實例:9個

e學碼:12個

9.1 包裝類.............................202

9.1.1 Integer類 ....................202

9.1.2 Number類 .....................205

9.2 Math類.............................206

9.2.1 Math類概述 ...................206

9.2.2 常用數學運算方法 .............207

9.3 Random類...........................211

9.4 Date類.............................214

9.5 枚舉類型...........................217

9.6 難點解答...........................219

9.6.1 注意隨機數的取值範圍 .........219

9.6.2 “裝箱”與“拆箱” ...........219

9.7 小結...............................220

9.8 動手糾錯...........................220

第10章 泛型與集合類.......221

視頻講解:1小時24分

精彩實例:6個

e學碼:17個

10.1 泛型..............................222

10.1.1 定義泛型類 ..................222

10.1.2 泛型的用法 ..................223

10.2 集合類概述........................226

10.3 List集合..........................227

10.3.1 List接口 ....................227

10.3.2 List接口的實現類 ............228

10.3.3 Iterator疊代器 ..............229

10.4 Set集合...........................231

10.4.1 Set接口 .....................231

10.4.2 Set接口的實現類 .............232

10.5 Map集合...........................234

10.5.1 Map接口 .....................234

10.5.2 Map接口的實現類 .............234

10.6 難點解答..........................236

10.6.1 集合的使用場合 ..............236

10.6.2 集合的元素數量是變化的 ......236

10.7 小結..............................237

10.8 動手糾錯..........................237

第11章 Swing程式設計......239

視頻講解:4小時50分

精彩實例:19個

11.1 Swing概述.........................240

11.1.1 Swing特點 ...................240

11.1.2 Swing包 .....................240

11.1.3 常用Swing組件概述 ...........241

11.2 常用窗體..........................242

11.2.1 JFrame窗體 ..................242

11.2.2 JDialog對話框窗體 ...........244

11.3 常用布局管理器....................247

11.3.1 FlowLayout流布局管理器 ......247

11.3.2 BorderLayout邊界布局管理器 ..249

11.3.3 GridLayout格線布局管理器 ....251

11.4 常用面板..........................252

11.4.1 JPanel面板 ..................252

11.4.2 JScrollPane滾動面板 .........254

11.5 標籤組件與圖示....................256

11.5.1 JLabel標籤組件 ..............256

11.5.2 圖示的使用 ..................256

11.6 文本組件..........................258

11.6.1 JTextField文本框組件 ........258

11.6.2 JPasswordField密碼框組件 ....260

11.6.3 JTextArea文本域組件 .........261

11.7 按鈕組件..........................263

11.7.1 JButton按鈕組件 .............263

11.7.2 JRadioButton單選按鈕組件 ....265

11.7.3 JCheckBox複選框組件 .........268

11.8 列表組件..........................269

11.8.1 JComboBox下拉列表框組件 .....269

11.8.2 JList列表框組件 .............271

11.9 事件監聽器........................274

11.9.1 動作事件監聽器 ..............274

11.9.2 鍵盤事件 ....................275

11.9.3 滑鼠事件 ....................278

11.9.4 窗體事件 ....................280

11.10 難點解答.........................282

11.10.1 Swing組件的層級關係 ........282

11.10.2 布局的使用 .................282

11.11 小結.............................283

11.12 動手糾錯.........................283

第12章 I/O(輸入/輸出)..285

視頻講解:1小時48分

精彩實例:6個

12.1 流概述............................286

12.2 輸入/輸出流.......................287

12.2.1 輸入流 ......................287

12.2.2 輸出流 ......................289

12.3 File類............................291

12.3.1 創建檔案對象 ................291

12.3.2 檔案操作 ....................292

12.3.3 資料夾操作 ..................294

12.4 檔案輸入/輸出流...................297

12.4.1 FileInputStream類與

FileOutputStream類 ..........297

12.4.2 FileReader類與FileWriter類 ..299

12.5 帶緩衝的輸入/輸出流...............301

12.5.1 BufferedInputStream類與

BufferedOutputStream類 ......302

12.5.2 BufferedReader類與

BufferedWriter類 ............304

12.6 難點解答..........................306

12.6.1 位元組流和字元流的區別 ........306

12.6.2 輸入/輸出流的使用 ...........306

12.7 小結..............................306

12.8 動手糾錯..........................306

第13章 多執行緒.............309

視頻講解:54分

精彩實例:6個

13.1 執行緒簡介..........................310

13.2 實現執行緒的兩種方式................310

13.2.1 繼承Thread類 ................310

13.2.2 實現Runnable接口 ............313

13.3 執行緒的生命周期....................316

13.4 操作執行緒的方法....................316

13.4.1 執行緒的休眠 ..................316

13.4.2 執行緒的加入 ..................318

13.4.3 執行緒的中斷 ..................321

13.5 執行緒的同步........................323

13.5.1 執行緒安全 ....................323

13.5.2 執行緒同步機制 ................324

13.6 難點解答..........................327

13.6.1 執行緒的核心方法:run()方法 ...327

13.6.2 執行緒的啟動 ..................327

13.7 小結..............................328

13.8 動手糾錯..........................328

第3篇 高級套用

第14章 使用JDBC操作

資料庫.............330

視頻講解:1小時08分

精彩實例:4個

14.1 JDBC概述..........................331

14.2 JDBC中常用的類和接口..............331

14.2.1 DriverManager類 .............331

14.2.2 Connection接口 ..............333

14.2.3 Statement接口 ...............333

14.2.4 PreparedStatement接口 .......334

14.2.5 ResultSet接口 ...............335

14.3 資料庫操作........................336

14.3.1 資料庫基礎 ..................336

14.3.2 連線資料庫 ..................338

14.3.3 數據查詢 ....................340

14.3.4 動態查詢 ....................342

14.3.5 添加、修改、刪除記錄 ........344

14.4 難點解答..........................347

14.4.1 無法連線資料庫 ..............347

14.4.2 SQL語句的使用 ...............347

14.5 小結..............................348

14.6 動手糾錯..........................348

第15章 Java繪圖...........349

視頻講解:1小時23分

精彩實例:5個

15.1 Java繪圖基礎......................350

15.1.1 Graphics繪圖類 ..............350

15.1.2 Graphics2D繪圖類 ............350

15.1.3 Canvas畫布類 ................350

15.2 繪製幾何圖形......................351

15.3 設定顏色與畫筆....................355

15.3.1 設定顏色 ....................355

15.3.2 設定畫筆 ....................358

15.4 圖像處理..........................360

15.4.1 繪製圖像 ....................360

15.4.2 圖像縮放 ....................362

15.5 難點解答..........................365

15.5.1 大部分方法需要重寫 ..........365

15.5.2 AWT與Swing組件的區別 ........365

15.6 小結..............................366

15.7 動手糾錯..........................366

第4篇 項目實戰

第16章 坦克大戰遊戲.......368

16.1 開發背景..........................369

16.2 系統開發環境要求..................369

16.3 系統功能設計......................369

16.3.1 系統功能結構 ................369

16.3.2 系統業務流程 ................369

16.4 項目目錄結構預覽..................371

16.5 枚舉設計..........................372

16.5.1 方向枚舉 ....................372

16.5.2 遊戲模式枚舉 ................372

16.5.3 坦克類型枚舉 ................373

16.5.4 牆塊類型枚舉 ................373

16.6 公共類設計........................374

16.6.1 繪圖工具類 ..................374

16.6.2 地圖工具類 ..................375

16.7 模型類設計.......................378

16.7.1 可顯示圖像的抽象類 ..........378

16.7.2 玩家坦克類 ..................380

16.7.3 電腦坦克類 ..................385

16.7.4 子彈類 ......................388

16.7.5 基地類 ......................390

16.7.6 爆炸效果類 ..................391

16.7.7 地圖類 ......................392

16.8 牆塊設計..........................393

16.8.1 牆塊抽象類 ..................393

16.8.2 牆塊實體類 ..................394

16.9 窗體類設計........................395

16.9.1 主窗體 ......................395

16.9.2 登錄面板 ....................396

16.9.3 顯示關卡面板 ................399

16.9.4 遊戲面板 ....................401

16.10 遊戲核心功能設計.................406

16.10.1 碰撞檢測 ...................406

16.10.2 刷新幀 .....................409

16.11 小結.............................410

附錄1 Eclipse常用快捷鍵......411

附錄2 編碼格式規範.........412

附錄3 命名規範.............414

附錄4 實例索引.............416

相關詞條

相關搜尋

熱門詞條

聯絡我們