Java編程入門與應用 Java编程入门与应用
孟麗絲, 張雪
- 出版商: 清華大學
- 出版日期: 2017-08-28
- 定價: $479
- 售價: 7.9 折 $378
- 語言: 簡體中文
- 頁數: 563
- 裝訂: 平裝
- ISBN: 7302478457
- ISBN-13: 9787302478454
-
相關分類:
Java 程式語言、程式語言、Design Pattern
立即出貨 (庫存=1)
買這商品的人也買了...
-
$420$332 -
$450$356 -
$450$356 -
$500$390 -
$699$629 -
$354$336
相關主題
商品描述
Java是當今世界最重要、使用最廣泛的電腦語言之一。全球有超過百萬的開發者在用Java進行各種程序的開發。用Java編寫的程序因為其硬件環境無關性而越來越受到人們的青睞。
本書共分19章,主要內容包括Java語言的發展、特點、運行環境、數據類型、流程控制、變量常量、運算符與表達式、註釋、選擇語句、循環語句、跳轉語句、數組和排序、類和對象、靜態類、繼承、枚舉、接口、集合類、泛型、字符串、日期和時間處理、數學類、隨機類和異常類。在應用方面介紹了文件和目錄操作、多線程、反射機制、網絡編程、數據庫編程以及圖形界面設計。最後介紹了常用的幾種設計模式在Java中的實現,如單例模式、工廠模式、適配器模式和狀態模式等。
本書既可以作為高等院校電腦相關專業Java語言程序設計課程的教材,也可以作為Java程序設計的培訓教材,還可以作為自學者的參考書。
海報:
作者簡介
孟麗絲,具有多年的開發經驗,熟悉數據庫Oracle、SQL Server、MySQL的使用,如存儲過程、SQL性能調優、日常數據庫管理、備份還原等。精通基於Windows下的各種應用服務的管理,包括DHCP、DNS、IIS、CA、VPN、Exchange、SQL、TMG等。
張雪,具有多年的開發經驗,熟練掌握Java語言,Struts框架,熟悉eclipse開發工具,熟練配置Tomcat應用服務器,及VSS等版本控制工具。熟悉JSP,曾經參與知名銀行、機場物流相應項目開發,熟練使用Oracle、SQL Server等關係數據庫。
目錄大綱
第1章認識Java
1.1 Java簡介………………………………2
1.1.1什麼是Java語言………………… 2
1.1.2 Java語言的特點……………… … 3
1.1.3學習Java的最佳途徑…………… 4
1.2高手帶你做——搭建Java開發環境…5
1.3高手帶你做——配置環境變量…………7
1.4高手帶你做——輸出“你好Java” ……9
1.4.1編寫Java源程序………………… 9
1.4.2編譯和運行…………………… 10
1.4.3編譯常見錯誤解決方法… …… 11
1.4.4 Java程序運行流程…………… 11
1.5 Java程序的基本要素……………… 12
1.5.1標識符………………………… 13
1.5.2關鍵字………………………… 13
1.5.3註釋…………………………… 14
1.5.4修飾符………………………… 15
1.5.5語句和塊… …………………… 15
1.5.6類……………………………… 15
1.5.7方法…………………………… 15
1.5.8 main() 法…………………… 15
1.6 Java推薦編程規範………………… 16
1.7高手帶你做——安裝Eclipse ……… 16
1.8高手帶你做——創建第一個Java
項目………………………………… 19
1.9高手帶你做——修改Eclipse編輯器
字體大小…………………………… 23
1.10高手帶你做——Eclipse調試代碼… 24
1.11成長任務…………………………… 26
第2章Java程序設計基礎
2.1常量………………………………… 28
2.1.1常量值………………………… 28
2.1.2定義常量……………………… 29
2.2變量…… …………………………… 29
2.2.1聲明變量……………………… 30
2.2.2變量賦值……………………… 30
2.2.3變量的作用域… ……………… 30
2.3數據類型…………………………… 32
2.3.1數據類型的分類……………… 33
2.3.2整數類型……………………… 33
2.3.3浮點類型……………………… 34
2.3.4布爾類型……………………… 36
2.3.5字符類型 …………………… 36
2.4基本運算符………………………… 37
2.4.1算術運算符…………………… 37
2.4.2賦值運算符…………… ……… 39
2.4.3邏輯運算符…………………… 41
2.4.4關係運算符…………………… 41
2.4.5自增和自減運算符…………… 43
2.5位運算符…………………………… 45
2.5.1位邏輯運算符………………… 45
2.5.2位移運算符…………………… 47
2.5.3複合位賦值運算符…………… 48
2.6高手帶你做——認識條件運算符…… 48
2.7運算符優先級……………………… 49
2.8類型轉換…………………………… 50
2.8.1隱式轉換……………………… 51
2.8.2顯式轉換……………………… 51
2.9成長任務…………………………… 52
第3章流程控制語句
3.1了解算法…………………………… 54
3.1.1算法的定義…………………… 54
3.1.2高手帶你做——使用算法求1~4的和……………………… 54
3.1.3算法描述方式………………… 55
3.2順序結構…………………………… 58
3.2.1語句編寫方式… …………… 58
3.2.2空語句………………………… 59
3.2.3表達式語句…………………… 59
3.2.4複合語句…………………… … 59
3.3 if條件語句…………………………… 60
3.3.1 if語句語法…………………… 60
3.3.2雙條件if語句………………… 62
3.3.3多條件if語句………………… 63
3.3.4高手帶你做——嵌套if的使用65
3.4 switch條件語句……………………… 67
3.4.1 switch語句格式………… …… 67
3.4.2 if語句和switch語句的區別… 69
3.4.3高手帶你做——根據出生日期判斷星座…………………… 70
3.5循環語句……………………… …… 71
3.5.1 while語句……………………… 72
3.5.2 do…while語句………………… 72
3.5.3 for語句………………………… 74
3.5 .4高手帶你做——九九乘法口訣表… 77
3.5.5 foreach語句…………………… 78
3.6跳轉語句…………………………… 79
3.6.1 return語句……………………… 79
3.6.2 break語句……………………… 80
3.6.3 continue語句…………………… 84
3.7高手 你做——判斷閏年和
輸出某月的天數…………………… 86
3.8高手帶你做——輸出楊輝三角形…… 87
3.9成長任務…………………………… 89
第4章字符串處理
4.1定義字符串………………………… 92
4.1.1直接定義字符串……………… 92
4.1.2使用String類定義…………… 92
4.2連接字符串………………………… 93
4.2.1使用連接運算符……………… 93
4.2.2使用concat()方法…………… 94
4.2.3高手帶你做——連接其他類型數據……………………… 95
4.3基本處理…………………………… 96
4.3.1獲取字符串長度……………… 96
4.3.2轉換大小寫…………………… 97
4.3.3去除空格……………………… 98
4.3.4提取子字符串…………… …… 98
4.3.5分割字符串…………………… 100
4.3.6高手帶你做——截取新聞標題… 100
4.4替換字符串…………………………102
4.4.1 replace()方法………………… 102
4.4.2 replaceFirst()方法……………… 102
4.4.3 replaceAll()方法……………… 103
4.4.4高手帶你做——批量替換字符串…………………………… 103
4.5比較字符串…………………………104
4.5.1 equals()方法…………………… 104
4.5.2 equalsIgnoreCase()方法……… 105
4.5.3 compareTo()方法……………… 106
4.6查找字符串…………… ……………107
4.6.1根據字符查找………………… 107
4.6.2根據索引查找………………… 108
4.6.3高手帶你做——校驗文件名和郵箱地址… ………………… 109
4.7高手帶你做——加密和解密…………110
4.8 StringBuffer類………………………111
4.8.1創建StringBuffer類…………… 112
4.8. 2追加字符串…………………… 112
4.8.3替換字符……………………… 114
4.8.4反轉字符串…………………… 114
4.8.5刪除字符串…………………… 114
4.8.6高手帶你做——替換特殊符號115
4.9正則表達式…………………………116
4.9.1元字符…………………… …… 116
4.9.2限定符………………………… 117
4.9.3高手帶你做——使用正則
表達式驗證電話 碼………… 117
4.9.4高手帶你做——驗證IP地址是否合法……………………… 118
4.10成長任務……………………………120
第5章數字和日期處理
5.1數學處理類…………………………122
5.1.1靜態常量…………………… … 122
5.1.2求最大值、最小值和絕對值… 122
5.1.3求整運算……………………… 123
5.1.4三角函數運算………………… 124
5.1.5指數運算……………………… 125
5.2高手帶你做——生成隨機數…………125
5.3高手帶你做——數字格式化…………128
5.4大數字運算…………… ……………129
5.4.1 BigInteger類…………………… 129
5.4.2 BigDecimal類………………… 131
5.5日期處理類…………………………133
5.5. 1 Date類………………………… 133
5.5.2 Calendar類…………………… 135
5.6日期格式化…………………………138
5.6.1 DateFormat類…… …………… 139
5.6.2 SimpleDateFormat類………… 140
5.7高手帶你做——計算課程結束日期… 142
5.8高 手帶你做——實現日期查詢功能… 144
5.9成長任務……………………………149
第6章Java內置包裝類
6.1 Object類………………………………152
6.2 Integer類……………………………154
6.3 Float類……………………… ………156
6.4 Double類……………………………158
6.5 Number類……………………………159
6.6 Character類…………………………160
6.7 Boolean類……………………………163
6.8 Byte類………………………………164
6.9 System類……………………………165
6.9.1 System類的成員變量………… 166
6.9.2 System類的成員方法………… 167
6.10成長任務……………………………169
第7章數組處理
7.1數組簡介………………… …………171
7.2一維數組……………………………171
7.2.1創建一維數組………………… 171
7.2.2分配空間……………………… 172
7.2.3初始化一維數組……………… 173
7.2.4獲取單個元素………………… 174
7.2.5獲取全部元素…… …………… 175
7.2.6高手帶你做——統計商品信息175
7.3二維數組……………………………176
7.3.1創建二維數組………………… 177
7.3.2初始化二維數組……………… 177
7.3.3獲取單個元素………………… 177
7.3.4獲取全部元素………………… 178
7.3.5獲取整行元素………………… 179
7.3.6獲取整列元素……………… … 180
7.4多維數組……………………………181
7.5數組的常用處理……………………181
7.5.1比較數組……………………… 182
7.5.2填充數組……………………… 182
7.5.3查找數組……………………… 183
7.6複製數組……………………………185
7.6.1使用copyOf()方法和copyOfRange()方法…………… 185
7.6.2使用arraycopy()方法………… 187
7.6.3使用clone()方法……………… 189
7.7數組排序……………………… ……190
7.7.1內置排序法…………………… 190
7.7.2冒泡排序法…………………… 191
7.7.3快速排序 …………………… 192
7.7.4選擇排序法…………………… 194
7.7.5直接插入法…………………… 195
7.8高手帶你做——實現商品信息
查詢功能……………………………196
7.9成長任務……………………………197
第8章類和對象
8.1面向對象概述… ……………………200
8.1.1對象的概念…………………… 200
8.1.2面向對象的三大核心特性…… 200
8.2高手帶你做——認識類和對象…… …202
8.3使用類………………………………203
8.3.1定義類………………………… 203
8.3.2屬性…………………………… 204
8.3.3高手帶你做——創建學生類… 205
8.3.4方法…………………………… 206
8.3.5 this關鍵字……………………… 208
8.4對象…… ……………………………209
8.4.1對象的創建…………………… 209
8.4.2訪問對象的屬性和行為……… 212
8.4.3對象的銷毀………… ………… 212
8.4.4高手帶你做——用戶修改密碼213
8.5作用域修飾符………………………215
8.5.1訪問控 修飾符……………… 215
8.5.2 static靜態修飾符……………… 217
8.5.3 final修飾符…………………… 221
8.6特殊方法……………………………222
8.6.1 main()方法…………………… 222
8.6.2方法的可變參數……………… 224
8.6.3構造方法……………………… 225
8.6.4高手帶你做——查看個人信息227
8.6.5析構方法……………………… 228
8.7包…………………… ………………230
8.7.1系統包………………………… 230
8.7.2自定義包……………………… 231
8.8高手帶你做——使用自定義包………231
8.9成長任務……………………………232
第9章繼承和多態
9.1類的封裝……………………………234
9.2高手帶你做——封裝圖書信息類……235
9.3類的繼承……………………………236
9.3.1簡單繼承……………………… 237
9.3.2單繼承…………………… …… 239
9.3.3 super關鍵字…………………… 240
9.3.4對像類型轉換………………… 241
9.3.5強制對像類型轉換…………… 243
9.4 方法重載……………………………244
9.5方法重寫……………………………245
9.6多態…………………………………247
9.7抽像類………………………………249
9.8接口…………………………………251
9.8.1定義接口……………………… 251
9.8.2實現接口……………………… 252
9.9高手帶你做——接口和抽像類
的區別………………………………254
9.9.1基本語法區別……………… … 254
9.9.2設計思想區別………………… 255
9.10內部類………………………………257
9.10.1內部類簡介…………………… 257
9.10.2高手帶你做——
使用實例內部類……………… 258
9.10.3高手帶你做——
使用靜態內部類……………… 261
9.10.4高手帶你做——使用局部
內部類………………………… 262
9.11匿名類………………………………263
9.12高手帶你做——利用內部類實現
多重繼承………………………… …265
9.13成長任務……………………………266
第10章Java異常處理
10.1了解Java中的異常………… ………268
10.1.1異常簡介……………………… 268
10.1.2高手帶你做——異常產生
的原因及使用原則…………… 268
10.1.3異常類型……………………… 269
10.2異常處理語句………………………270
10.2.1異常語句結構………………… 270
10.2.2 try catch語句… ……………… 270
10.2.3高手帶你做——計算
平均成績……………………… 272
10.2.4 try catch finally語句………… 273
10.3異常的聲明和拋出…… ……………275
10.3.1 throws聲明異常……………… 276
10.3.2 throw拋出異常……………… 277
10.4自定義異常…………………………278
10.5高手帶你做——驗證用戶
登錄信息……………………………280
10.6高手帶你做——完善除法運算
的錯誤提示…………………………282
10.7成長任務…… ………………………285
第11章集合、泛型和枚舉
11.1 Java集合類概述……………………288
11.1.1集合中的接口………………… 288
11.1 .2接口實現類…………………… 288
11.2 Collection接口………………… ……289
11.3 List集合……………………………291
11.3.1 ArrayList類…………………… 291
11.3.2 LinkedList類………………… 294
11.4 Set集合……………………………296
11.4.1 HashSet類…………………… 296
11.4.2 TreeSet類……… …………… 297
11.5 Map集合……………………………300
11.6 Collections類………………………301
11.6.1正向排序……………………… 301
11.6.2逆向排序……………………… 302
11.6.3複製…………………………… 303
11.6.4填充…………………………… 305
11.7泛型…………………………………306
11.7.1泛型集合……………………… 306
11.7.2泛型類………………………… 308
11.7.3泛型方法……………………… 309
11.7.4泛型的高級用法……………… 310
11.8高手帶你做——圖書查詢功能……311
11.9枚舉……………… …………………314
11.9.1聲明枚舉……………………… 314
11.9.2枚舉類………………………… 315
11.9.3為枚舉添加方法… ………… 316
11.9.4 EnumMap與EnumSet ……… 319
11.10成長任務……………………………320
第12章Java反射機制
12.1 Java反射簡介………………………322
12.2反射在類中的應用…………………323
12.2.1訪問構造方法………………… 323
12.2 .2訪問方法……………………… 326
12.2.3訪問成員變量………………… 330
12.3高手帶你做——在遠程方法中
使用反射機制…………………… …333
12.4成長任務……………………………338
第13章Java輸入/輸出流
13.1流概述………………………………340
13.1.1什麼是輸入/輸出流………… 340
13.1.2輸入流………………………… 340
13.1.3輸出流………………………… 341
13.2系統流………………………… ……342
13.3操作文件……………………………344
13.3.1 File類簡介…………………… 344
13.3.2獲取文件屬性………………… 345
13.3.3創建和刪除文件……………… 346
13.3.4創建和刪除目錄……………… 346
13.3.5遍歷目錄 …………………… 347
13.4高手帶你做——動態讀取文件內容… 349
13.5使用字節流…………………………351
13.5.1字節輸入流…………………… 351
13.5.2字節輸出流…………………… 352
13.5.3字節數組輸入流……………… 353
11.5.4字節數組輸出流……………… 354
13.5.5文件輸入流…………………… 355
13.5.6文件輸出流…………………… 356
13.6使用字符流………… ………………358
13.6.1字符輸入流…………………… 359
13.6.2字符輸出流…………………… 359
13.6.3字符文件輸入流……………… 360
13.6.4字符文件輸出流……………… 361
13.6.5字符緩衝區輸入流…………… 363
13.6.6字符緩衝區輸出流…………… 364
13.7高手帶你做——保存圖書信息……365
13.8成長任務……………………………367
第14章Java多線程編程
14.1線程簡介……………………………370
14.2實現線程………… …………………371
14.2.1繼承Thread類……………… 371
14.2.2實現Runnable接口………… 375
14.2.3兩種方法比較………………… 376
14.3線程的生命週期……………………376
14.4高手帶你做——多線程
之間訪問實例變量…………………377
14.5高手帶你做——解決
非線程安全問題……………………380
14.6線程同步……………………………382
14.7線程操作方法………………………384
14.7.1 currentThread()方法………… 384
14.7.2 isAlive()方法………………… 386
14.7.3 sleep()方法……… …………… 389
14.7.4 getId()方法…………………… 390
14.7.5 yield()方法…………………… 391
14.8高手帶你做——停止線程……… …392
14.8.1停止不了的線程……………… 392
14.8.2判斷線程是不是停止狀態…… 393
14.8.3異常法停止線程……………… 396
14.8.4在休眠中停止… ……………… 398
14.8.5強制停止線程………………… 400
14.8.6釋放鎖的不良後果…………… 401
14.8.7使用return停止線程………… 403
14.9高手帶你做——暫停線程…………404
14.9.1 suspend()與resume()方法…… 404
14.9.2 佔問題……………………… 406
14.9.3不同步問題…………………… 408
14.10線程的優先級和執行順序………409
14.10.1優先級概述………………… 409
14.10.2使用優先級………………… 410
14.11成長任務………………… …………412
第15章JDBC數據庫編程
15.1 JDBC技術…………………………414
15.1.1 JDBC簡介…………………… 414
15.1.2 JDBC API簡介…………… … 414
15.1.3 JDBC驅動類型……………… 415
15.2連接數據庫…………………………417
15.3使用JDBC驅動程序………………417
15.3.1提供JDBC連接的URL … …… 418
15.3.2加載JDBC驅動程序………… 418
15.3.3數據庫驅動類………………… 420
15.3.4關閉數據庫連接……………… 422
15.4高手帶你做——使用ODBC橋
連接數據庫…………………………423
15.5執行SQL語句………………………424
15.5.1 Statement對象………………… 424
15.5.2 PreparedStatement對象……… 426
15.5.3 CallableStatement對象……… 428
15.6處理查詢結果………………………430
15.6.1使用ResultSet ………………… 430
15.6.2 ResultSet接口的方法………… 431
15.6.3 ResultSetMetaData對象……… 433
15.7高級結果集…………………………434
15.7 .1可滾動結果集………………… 434
15.7.2可更新結果集………………… 437
15.8高手帶你做——獲取列的信息……440
15.9高手帶你做——商品管理系統……441
15.10成長任務…………………………446
第16章Java網絡編程
16.1網絡基礎……………………………448
16.1.1網絡分類………… …………… 448
16.1.2網絡編程模型………………… 448
16.1.3網絡協議……………………… 449
16.1.4套接字和端口………………… 450
16.2 InetAddress地址類…………………450
16.3 TCP通信……………………………452
16.3.1 ServerSocket類……………… 452
16.3.2 Socket類…………… ………… 454
16.3.3高手帶你做——客戶端與服務器端的簡 通信……… 456
16.3.4高手帶你做——傳輸對像數據… 458
16.4 UDP通信……………………………462
16.4.1 DatagramPacket類…………… 462
16.4.2 DatagramSocket類…………… 463
16.5 URL通信………………………… …465
16.5.1 URL概念……………………… 465
16.5.2 URL類………………………… 466
16.5.3 URLConnection類…………… 466
16.5.4高手帶你做——提取URL協議
名稱…………………………… 467
16.6成長任務……………………………468
第17章Swing界面編程基礎
17.1 Swing簡介……………… …………470
17.1.1 Swing類庫結構……………… 470
17.1.2 Swing包……………………… 470
17.1.3 Swing容器…………………… 471
17.2窗口和麵板…………………………472
17.2.1 JFrame窗口…………………… 472
17.2.2 JPanel面板…………………… 473
17.3佈局管理器…………… ……………474
17.3.1邊框佈局管理器……………… 475
17.3.2流式佈局管理器……… …… 476
17.3.3卡片佈局管理器……………… 478
17.3.4網格佈局管理器……………… 479
17.3.5網格包佈局管理器…………… 480
17.3.6盒佈局管理器………………… 483
17.4基本組件……………………………484
17.4.1標籤組件……………………… 484
17.4.2按鈕組件……………… ……… 486
17.4.3單行文本框組件……………… 487
17.4.4文本域組件…………………… 489
17.4.5複選框組件…………………… 490
17.4 .6單選按鈕……………………… 491
17.4.7下拉列表組件………………… 492
17.4.8列錶框組件…………………… 494
17.5高手帶你做— —實現計算器界面…495
17.6事件處理……………………………497
17.6.1事件處理模型………………… 497
17.6.2動作事件監聽器……………… 498
17.6.3焦點事件監聽器……………… 499
17.6.4高手帶你做——監聽
列表項選擇事件…………… 500
17.7高手帶你做——星座選擇器………501
17.8成長任務……………………………504
第18章Swing高級組件
18.1高級佈局組件………………………506
18.1.1滑塊…………………………… 506
18.1.2進度條………………………… 508
18.1.3計時器………………………… 511
18.1.4菜單欄………………………… 513
18.1.5工具欄………………………… 518
18.2選擇器組件… ………………………521
18.2.1文件選擇器…………………… 521
18.2.2顏色選擇器…………………… 523
18.3對話框………………… ……………524
18.3.1確認對話框…………………… 524
18.3.2消息對話框…………………… 525
18.3.3輸入對話框…………………… 526
18.3.4選項對話框…………………… 527
18.4表格…………………………………527
18.5樹……………………………………531
18.6選項卡………………………………533
18.7高手帶你做——製作文本編輯器…535
18.8成長任務……………………………538
第19 Java設計模式
19.1認識設計模式………………………540
19.1.1設計模式簡介………………… 540
19.1.2設計模式的理解……………… 540
19.1.3設計模式的分類……………… 541
19.1.4為什麼要學習設計模式……… 542
19.1.5如何學習設計模式…………… 543
19.1.6學習設計模式的層次……… … 543
19.1.7面向對象的設計原則………… 544
19.2單例模式……………………………545
19.3工廠模式……………………………546
19.3.1簡單工廠模式………………… 546
19.3.2工廠方法模式………………… 548
19.3.3抽象工廠模式………………… 551
19.4適配器模式……………………… …553
19.5外觀模式……………………………555
19.6觀察者模式…………………………558
19.7狀態模式……………………………560
19.8不要過度使用設計模式……………563