面向對象程式設計(2020年人民郵電出版社出版的圖書)

本詞條是多義詞,共11個義項
更多義項 ▼ 收起列表 ▲

《面向對象程式設計》是2020年人民郵電出版社出版的圖書,作者是武春嶺。

基本介紹

  • 中文名:面向對象程式設計
  • 作者:武春嶺
  • 出版時間:2020年
  • 出版社:人民郵電出版社
  • ISBN:9787115525376
內容簡介,圖書目錄,

內容簡介

針對目前開發行業對Java開發工具套用的技能需求以及計算機類專業對Java編程的基本要求,《面向對象程式設計 Java版》以“學習目標→任務引導→相關知識→任務實施→綜合訓練”為主線,在介紹程式語法的基礎上,以小項目開發為實踐落腳點,做到學練結合,提高學習效率:通過“學習目標”和“任務引導”,讓讀者先了解要解決的問題;然後詳細講解相關知識,幫助讀者奠定技術基礎;進而在“任務實施”引導讀者完成上機操作,體現學以致用,並通過“拓展訓練”幫助讀者進一步提高編程技術和能力;最後通過“綜合訓練”梳理重要知識點,促進讀者對重要內容的掌握。
本書整體上採用“項目引導與驅動”模式,將枯燥的程式語法學習融入具體項目案例,這有利於激發讀者學習興趣,提升學習效果。此外,本書案例源自實際生活,並參考近期Java編程崗位的技能需求,結構合理,實用性強。
本書可作為高職院校計算機類專業或電子信息類專業Java程式設計教材,也可作為成人高等學校和其他培訓機構的教材,還可以作為零基礎學習Java讀者的參考圖書。

圖書目錄

第 1章 初識Java
學習目標 .2
任務引導 .2
相關知識 .2
1.1 計算機語言. 2
1.1.1 機器語言2
1.1.2 彙編語言3
1.1.3 高級語言3
1.2 Java發展史. 5
1.2.1 Java的誕生 5
1.2.2 JDK 1.0發布 5
1.2.3 Java 2問世 .5
1.2.4 JavaSE 5.0發布 6
1.2.5 JDK 7.0發布 6
1.2.6 JDK 8.0發布 6
1.2.7 JDK 9.0發布 7
1.2.8 JDK 10.0發布 7
1.3 Java的特點. 7
1.3.1 Java是面向對象的 8
1.3.2 Java是平台無關的 8
1.3.3 Java語言是健壯的 8
1.4 Java程式工作原理. 9
1.4.1 Java虛擬機 9
1.4.2 垃圾回收機制11
1.5 Java SE的結構 11
1.6 標識符和關鍵字. 12
1.6.1 標識符12
1.6.2 關鍵字13
1.7 Java註解. 13
1.7.1 Java註解 .13
1.7.2 內建註解15
1.7.3 自定義註解20
1.8 變數和常量. 26
1.8.1 變數26
1.8.2 常量27
1.9 Java數據類型. 27
1.9.1 Java數據類型概述 27
1.9.2 整型29
1.9.3 浮點型30
1.9.4 字元型31
1.9.5 布爾型32
1.9.6 基本數據類型轉換32
1.10 成員變數和局部變數. 34
1.11 Java運算符 . 36
1.11.1 算術運算符 36
1.11.2 邏輯運算符 39
1.11.3 位運算符 40
1.12 Java表達式. 42
1.12.1 Java表達式概述 42
1.12.2 表達式的運算順序43
任務實施 .44
1.13 任務1 開發環境搭建. 44
1.14 任務2 註解套用. 46
1.14.1 子任務1 內建註解套用46
1.14.2 子任務2 自定義註解與元註解套用46
1.15 任務3 Java簡易程式開發 46
1.15.1 子任務1 第 一個Java程式46
1.15.2 子任務2 工程師月薪計算51
拓展訓練 .52
“瑞達系統”獲取用戶輸入52
綜合訓練 .56
第 2章 控制結構、方法與數組套用
學習目標 .59
任務引導 .59
相關知識 .59
2.1 if語句 59
2.1.1 if語句的語法 .60
2.1.2 嵌套if語句 .65
2.2 switch語句 67
2.2.1 switch語句概述 .67
2.2.2 switch語句的使用 .68
2.3 循環語句. 70
2.3.1 while循環 .71
2.3.2 do.while循環 74
2.3.3 for循環 .75
2.3.4 雙重for循環 .77
2.3.5 跳轉語句79
2.4 方法. 79
2.4.1 Java方法概述 79
2.4.2 Java方法的使用 84
2.4.3 方法遞歸調用86
2.5 數組. 87
2.5.1 一維數組87
2.5.2 引用數據類型90
2.5.3 值傳遞與引用傳遞91
2.5.4 一維數組初始化95
2.6 排序算法. 96
2.6.1 冒泡排序96
2.6.2 插入排序97
2.7 二維數組. 98
2.7.1 二維數組簡介98
2.7.2 二維數組的使用99
任務實施 .101
2.8 任務1 控制結構套用. 101
2.8.1 子任務1 商城送禮101
2.8.2 子任務2 學習班結業101
2.8.3 子任務3 功能模組跳轉102
2.9 任務2 方法套用. 106
2.10 任務3 數組套用115
2.10.1 子任務1 分數數列前20項求和115
2.10.2 子任務2 楊輝三角形列印116
拓展訓練 .117
“瑞達系統”刪除和查詢模組實現117
綜合訓練 .124
第3章 類與對象套用
學習目標 .127
任務引導 .127
相關知識 .128
3.1 類和對象概述. 128
3.1.1 面向過程與面向對象128
3.1.2 類和對象的概念129
3.2 Java類. 131
3.2.1 Java類的定義 131
3.2.2 Java類的創建和使用 132
3.2.3 Java類的簡單運用 135
3.2.4 封裝141
3.3 構造方法. 144
3.3.1 構造方法解決問題144
3.3.2 構造方法的使用145
3.4 對象初始化過程. 147
3.4.1 初始化塊148
3.4.2 對象初始化記憶體結構149
3.5 重載. 151
3.5.1 重載的定義151
3.5.2 重載方法的使用151
3.6 抽象和封裝. 154
3.6.1 類抽象154
3.6.2 類封裝155
3.6.3 方法的實現162
3.7 繼承. 163
3.7.1 繼承的概念164
3.7.2 繼承的使用165
3.7.3 繼承和訪問許可權169
3.7.4 方法重寫170
3.7.5 屬性覆蓋172
3.7.6 繼承中的初始化174
3.8 多態. 176
3.8.1 向上轉型176
3.8.2 向下轉型179
3.9 包和訪問控制. 181
3.9.1 Java包 182
3.9.2 引用包183
3.9.3 訪問許可權186
3.9.4 static關鍵字 .190
3.10 抽象類. 195
3.10.1 抽象類的概念195
3.10.2 抽象類的使用195
3.10.3 抽象類的特徵198
3.11 接口 . 199
3.11.1 接口的概念 199
3.11.2 接口的使用 202
3.11.3 接口的特徵 205
3.11.4 接口的套用 210
任務實施 .212
3.12 任務1 類和對象套用. 212
3.12.1 子任務1 封裝學生類和老師類212
3.12.2 子任務2 構造方法初始化學生類和老師類213
3.12.3 子任務3 重載學習方法213
3.13 任務2 包和訪問控制套用 213
3.13.1 子任務1 導入類和包213
3.13.2 子任務2 產生隨機數213
3.13.3 子任務3 static關鍵作用範圍測試213
3.14 任務3 抽象類與接口套用 214
3.14.1 子任務1 繼承角度實現租車系統214
3.14.2 子任務2 多態角度實現租車系統214
3.14.3 子任務3 抽象類方式實現人與中國人的關係214
3.14.4 子任務4 接口方式實現印表機工作過程214
拓展訓練 .214
使用接口最佳化“租車系統” 214
綜合訓練 .215
第4章 反射機制與常用類套用
學習目標 .219
任務引導 .219
相關知識 .219
4.1 Java反射機制. 219
4.2 Class類 . 222
4.2.1 Class類概述 .222
4.2.2 Class類常用方法 .224
4.3 獲取類信息. 225
4.3.1 獲取方法225
4.3.2 獲取屬性229
4.3.3 獲取構造方法232
4.4 動態調用. 235
4.4.1 創建對象236
4.4.2 修改屬性239
4.4.3 調用方法240
4.5 操作動態數組. 242
4.5.1 操作一維動態數組242
4.5.2 操作多維動態數組244
4.6 Java API文檔的使用 . 245
4.7 String類 246
4.7.1 String類的概念 247
4.7.2 String類的使用 249
4.8 StringBuffer類 . 255
4.8.1 StringBuffer類的使用 .255
4.8.2 StringBuffer記憶體模型 .257
4.9 異常處理. 257
4.9.1 異常概述258
4.9.2 異常處理262
4.9.3 異常使用注意事項270
4.9.4 拋出異常274
4.9.5 自定義異常類280
任務實施 .283
4.10 任務1 反射機制套用. 283
4.10.1 子任務1 Class類常用
操作測試283
4.10.2 子任務2 方法結構
獲取283
4.10.3 子任務3 動態創建對象、修改屬性和動態調用方法283
4.10.4 子任務4 動態數組實現不定員班級信息管理283
4.11 任務2 常用類套用 . 284
4.11.1 子任務1 計算字元串中子字元串出現的次數284
4.11.2 子任務2 完成Java工程師註冊的功能285
4.11.3 子任務3 字元串分割286
4.11.4 子任務4 使用Java API查找String類的方法並使用287
4.12 任務3 異常類套用. 287
4.12.1 子任務1 根據現有程式添加合適的異常處理代碼287
4.12.2 子任務2 手工拋出一個算數異常288
拓展訓練 .289
完成提交論文的功能289
綜合訓練 .291
第5章 數據結構套用
學習目標 .294
任務引導 .294
相關知識 .294
5.1 數據邏輯結構. 294
5.1.1 數據基本概念294
5.1.2 線性結構295
5.1.3 樹結構296
5.1.4 圖結構297
5.2 數據存儲結構. 298
5.2.1 順序存儲結構298
5.2.2 鏈式存儲結構299
5.3 線性結構. 299
5.3.1 線性表的存儲結構299
5.3.2 線性表301
5.3.3 棧305
5.3.4 佇列308
5.4 查找. 309
5.4.1 無序查找309
5.4.2 有序查找—二分查找310
5.5 排序. 312
5.5.1 選擇排序313
5.5.2 快速排序314
任務實施 .317
5.6 任務 數據結構套用. 317
5.6.1 子任務1 數組方式實現線性表基本操作317
5.6.2 子任務2 數組方式實現棧基本操作318
5.6.3 子任務3 數組方式實現佇列基本操作318
5.6.4 子任務4 二分查找指定數據318
5.6.5 子任務5 對指定數據實現選擇排序318
拓展訓練 .318
對指定數據實現快速排序318
綜合訓練 .319
第6章 集合套用
學習目標 .321
任務引導 .321
相關知識 .321
6.1 集合框架. 321
6.1.1 集合引入321
6.1.2 Collection接口框架 .322
6.1.3 Map接口框架 324
6.2 Set接口 . 324
6.2.1 Set接口方法 324
6.2.2 HashSet使用 325
6.2.3 TreeSet使用 .326
6.2.4 Comparable接口 327
6.3 Iterator疊代器 . 329
6.3.1 Iterator接口方法 329
6.3.2 Iterator使用 330
6.3.3 增強for循環 .332
6.4 List接口 333
6.4.1 List接口方法 .333
6.4.2 ArrayList使用 334
6.4.3 LinkedList使用 336
6.5 Map接口. 336
6.5.1 HashMap使用 336
6.5.2 Map接口方法 338
6.6 工具類. 338
6.6.1 Collections工具類常用方法338
6.6.2 Collections工具類使用 .340
6.6.3 Comparable與Comparator 341
6.6.4 Arrays工具類使用 .345
6.7 自動拆箱和裝箱. 347
6.7.1 自動拆箱和裝箱概念347
6.7.2 自動拆箱和裝箱使用348
6.8 泛型. 349
任務實施 .351
6.9 任務1 集合套用. 351
6.9.1 子任務1 實現學生信息存放與刪除351
6.9.2 子任務2 改寫“租車系統”,逆序輸出車輛名稱351
6.9.3 子任務3 為“租車系統”增加附加車輛信息功能351
6.9.4 子任務4 域名與內容關聯存儲實現352
6.10 任務2 集合工具類套用 352
6.10.1 子任務1 利用工具類實現學生信息比較352
6.10.2 子任務2 泛型方式實現“租車系統”352
拓展訓練 .352
對“瑞達系統”進行結構最佳化和功能完善352
綜合訓練 .353
第7章 檔案操作套用
學習目標 .355
任務引導 .355
相關知識 .355
7.1 File類 355
7.1.1 File類構造方法 .355
7.1.2 File類使用 .357
7.1.3 靜態導入359
7.1.4 獲取目錄和檔案360
7.2 位元組流和字元流. 362
7.2.1 位元組流363
7.2.2 字元流366
7.3 其他流. 369
7.3.1 緩衝流369
7.3.2 位元組流轉換為字元流371
7.3.3 數據流372
7.4 XML解析 . 374
7.4.1 XML概述 .374
7.4.2 XML解析 .378
任務實施 .385
7.5 任務1 檔案基本操作套用 385
7.5.1 子任務1 獲取目錄和檔案路徑385
7.5.2 子任務2 字元流方式實現檔案複製385
7.5.3 子任務3 數據流方式存取車輛信息385
7.6 任務2 XML檔案操作套用 385
7.6.1 子任務1 XML方式存放車輛信息385
7.6.2 子任務2 解析XML車輛信息386
拓展訓練 .386
為“租車系統”增加信息保存功能386
綜合訓練 .387
第8章 執行緒套用
學習目標 .389
任務引導 .389
相關知識 .389
8.1 多執行緒. 389
8.1.1 執行緒引入389
8.1.2 多執行緒優勢390
8.1.3 執行緒狀態392
8.2 創建和使用執行緒. 393
8.2.1 創建執行緒類393
8.2.2 多執行緒使用394
8.3 執行緒控制. 396
8.3.1 執行緒控制方法397
8.3.2 終止執行緒398
8.3.3 執行緒等待和中斷等待400
8.3.4 等待其他執行緒完成402
8.3.5 設定執行緒優先權404
8.3.6 守護執行緒407
8.4 共享數據. 408
8.4.1 數據不一致408
8.4.2 控制共享數據410
8.4.3 多執行緒同步412
8.5 執行緒死鎖和協作. 417
8.5.1 執行緒死鎖417
8.5.2 執行緒協作419
任務實施 .424
8.6 任務 執行緒套用. 424
8.6.1 子任務1 多執行緒實現輸出424
8.6.2 子任務2 執行緒等待與中斷方式實現計數425
8.6.3 子任務3 多執行緒同步計數425
拓展訓練 .425
完成吃熱狗活動425
綜合訓練 .426
第9章 網路編程套用
學習目標 .428
任務引導 .428
相關知識 .428
9.1 計算機網路. 428
9.1.1 主要功能和分類428
9.1.2 網路協定430
9.1.3 網路分層模型430
9.1.4 TCP/IP協定簡介 432
9.1.5 數據封裝和解封435
9.2 IP位址和域名. 436
9.2.1 IP位址 436
9.2.2 IP位址類型 436
9.2.3 子網掩碼438
9.2.4 域名439
9.3 網路配置. 439
9.3.1 配置和查看439
9.3.2 常用TCP/IP網路命令440
9.4 Java與網路. 441
9.4.1 IP位址類 442
9.4.2 URL類444
9.4.3 URLConnection類 .446
9.5 Socket編程 . 449
9.5.1 基於TCP的Socket編程449
9.5.2 基於UDP的Socket編程454
任務實施 .456
9.6 任務1 IP位址配置與ping測試 456
9.7 任務2 網路編程常用類測試 457
拓展訓練 .457
客戶端與伺服器信息互動457
綜合訓練 .458
第 10章 軟體測試套用
學習目標 .460
任務引導 .460
相關知識 .460
10.1 軟體測試. 460
10.1.1 軟體測試概念460
10.1.2 測試與調試461
10.2 軟體缺陷. 462
10.2.1 確定軟體缺陷462
10.2.2 有效記錄缺陷463
10.3 缺陷報告處理. 465
10.3.1 缺陷報告處理流程465
10.3.2 缺陷報告詳細內容466
10.4 軟體測試流程. 467
10.4.1 需求分析階段467
10.4.2 設計和編碼階段468
10.4.3 集成、系統和驗收測試469
10.4.4 單元、集成、系統和驗收測試469
10.5 軟體測試分類. 471
10.5.1 黑盒測試和白盒測試471
10.5.2 手工測試和自動測試472
10.6 JUnit初探 . 472
10.6.1 “加”類JUnit 4測試 .473
10.6.2 “計算器”類測試474
10.6.3 JUnit 4知識拓展 479
任務實施 .483
10.7 任務 JUnit測試Add方法 483
拓展訓練 .483
使用JUnit 4對計算器類單元測試483
綜合訓練 .484

相關詞條

熱門詞條

聯絡我們