Java範例開發大全

Java範例開發大全

《Java範例開發大全》是清華大學出版社出版的圖書,作者是張帆。

基本信息

內容簡介

《Java範例開發大全》共22章,內容涉及Java開發環境的搭建、Java基礎類型與運算符、條件控制語句、異常處理、數組、字元串、輸入輸出流、面向對象及其四大特徵、內部類與接口、Java常用類、集合、多執行緒編程、Java泛型編程、網路編程、資料庫技術、界面設計Swing、Applet小應用程式、多媒體與圖像處理、JSP技術等。最後還介紹了模擬伺服器與客戶端之間的通信及書店管理系統兩個綜合案例,以提高讀者的實戰水平。

本書精心挑選了有代表意義的370餘個實例,詳細介紹了如何利用Java語言的強大功能來開發應用程式。本書附帶1張光碟,內容為本書中所有實例的多媒體語音教學視頻及書中的實例原始碼。

本書內容豐富,實用性強,實例貼近生活,容易理解,而且書中每一個實例都經過仔細調試。本書適合Java初、中級學習人員學習和提高使用,也可以作為Java程式設計師案頭必備的參考資料。

圖書目錄

第1篇 Java編程基礎

第1章 Java開發環境的搭建(教學視頻:9分鐘) 2

1.1 理解Java 2

1.2 搭建Java所需環境 3

1.2.1 下載JDK 3

1.2.2 安裝JDK 4

1.2.3 配置環境 5

1.2.4 測試JDK配置是否成功 7

實例1 開發第一個Java程式 7

第2章 Java基礎類型與運算符(教學視頻:39分鐘) 9

2.1 基礎類型 9

實例2 自動提升 9

實例3 自動轉換 10

實例4 常用基礎類型之強制轉換 11

2.2 運算符 12

實例5 算術運算符 12

實例6 關係運算符 13

實例7 邏輯運算符 14

實例8 位運算符 15

實例9 移位運算符 16

實例10 轉型運算符 17

2.3 其他形式 18

實例11 常量與變數 18

實例12 各種進制的轉換 19

實例13 Java中的進制與移位運算符 22

第3章 條件控制語句(教學視頻:75分鐘) 26

3.1 if控制語句 26

實例14 判斷輸入的年份是否為閏年 26

實例15 抽獎活動 27

3.2 for語句 28

實例16 小九九乘法表 28

實例17 如何列出素數 29

實例18 Java中的遞歸 31

實例19 男生女生各多少人 32

實例20 求水仙花數 34

實例21 求任意一個正數的階乘 35

實例22 求n的n次方 35

實例23 利用for循環輸出幾何圖形 36

實例24 楊輝三角 38

3.3 while語句 39

實例25 求1到100之間的和 39

實例26 存上100元需要多少天 40

實例27 輸出100之間的所有偶數 41

實例28 如何判斷迴文數字 42

3.4 do…while語句 43

實例29 輸出100之間的所有奇數 44

實例30 求最大的隨機數 44

3.5 switch語句 45

實例31 判斷字母分類 46

實例32 優良及差 47

實例33 列印任意一年日曆 48

實例34 一年四季的劃分 51

第2篇 Java數據處理

第4章 異常處理(教學視頻:62分鐘) 54

4.1 編譯時異常 54

實例35 除0發生的算術異常(ArithmeticException) 54

實例36 數組下標越界異常(ArrayIndexOutOfBoundsException) 55

實例37 數組元素類型不匹配異常(ArrayStoreException) 56

實例38 強制類型轉換異常(ClassCastException) 56

實例39 索引越界異常(IndexOutOfBoundsException) 57

實例40 空指針異常(NullPointerException) 58

實例41 數字格式轉換異常(NumberFornatException) 59

實例42 字元串索引越界異常(StringIndexOutBounds) 60

實例43 操作錯誤(UnsupportedOperationException) 60

4.2 運行時異常 61

實例44 找不到指定類時發生的異常(ClassNotFoundException) 62

實例45 請求的方法不存在(NoSuchMethodException) 63

4.3 try…catch捕獲異常 65

實例46 try…catch捕獲異常的實例 66

實例47 try…catch…finally捕獲異常的實例 67

實例48 try…catch嵌套捕獲異常的實例 68

4.4 throws聲明異常 69

實例49 throws聲明異常實例一 69

實例50 throws聲明異常實例二 70

4.5 throw拋出異常 72

實例51 throw拋出異常實例一 72

實例52 throw拋出異常實例二 73

4.6 自定義異常 74

實例53 自定義異常實例一 74

實例54 自定義異常實例二 75

第5章 數組(教學視頻:98分鐘) 78

5.1 一維數組 78

實例55 一維數組的創建與使用 78

實例56 按相反的順序輸出 79

實例57 奇偶分組 80

實例58 找寶 81

實例59 尋找最小數 82

實例60 我的位置在哪裡 83

實例61 複製數組 85

實例62 插入新元素 86

實例63 數組的合併 87

實例64 去除重複元素 88

實例65 數組求和計算 90

實例66 求最大值、最小值和平均值 91

5.2 二維數組 92

實例67 二維數組的創建與使用 92

實例68 矩陣轉置 93

實例69 奇數階幻方 94

實例70 求方陣對角線之和 96

實例71 矩陣的加法 97

實例72 矩陣的減法 98

實例73 快遞報價單 99

5.3 數組的排序 101

實例74 冒泡排序法 102

實例75 數組遞增排序 103

實例76 部分數組遞增排序 103

實例77 選擇排序法 104

實例78 快速排序法 106

第6章 字元串(教學視頻:138分鐘) 108

6.1 字元串類String 108

實例79 創建字元串類 108

實例80 如何使用charAt()方法計算重複字元 109

實例81 按字母順序比較大小 110

實例82 首尾相連 111

實例83 字元串間的比較 112

實例84 字元集的解碼方法 113

實例85 尋找指定字元第一次出現的位置 114

實例86 尋找指定字元最後出現的位置 115

實例87 我究竟有多長 116

實例88 替換指定的字元 117

實例89 分割字元串 117

實例90 如何使用substring()方法截取子串 118

實例91 分解字元串 119

實例92 字母大小寫轉換 120

實例93 去除多餘的空白 120

實例94 原始數組類型的String形式 121

實例95 Java合法標識符 122

實例96 顯示一周各星期的名稱 123

實例97 構造空心方框 124

實例98 這一天是星期幾 125

實例99 大小寫互換 127

實例100 輸出指定範圍的素數 128

實例101 我出現了幾次 129

實例102 算術表達式求值器 129

實例103 字元串對齊調整器 137

實例104 字元串的加密 139

實例105 使用正則表達式驗證電話號碼的格式 141

6.2 字元串快取類StringBuffer 143

實例106 創建字元串快取類 143

實例107 提取單個字元 144

實例108 給指定字元賦值 145

實例109 插入新的字元 146

實例110 插入新的字元串 146

實例111 獲取字元串的子串 147

實例112 刪除指定的字元 148

實例113 倒置字元串 149

實例114 去除重複字元 149

實例115 檢查是否是回文 151

第7章 輸入/輸出流(教學視頻:116分鐘) 152

7.1 檔案和目錄 152

實例116 顯示檔案的基本信息 152

實例117 顯示目錄的基本信息 153

實例118 在指定的目錄下創建單個檔案 156

實例119 在指定的目錄下創建多個臨時檔案 158

實例120 刪除指定目錄下的檔案 160

實例121 移動指定目錄下的檔案 163

實例122 檔案搜尋引摯 167

7.2 位元組流 169

實例123 複製指定目錄下的檔案 170

實例124 顯示檔案中的內容 173

實例125 將數據保存到指定的檔案中 175

實例126 將由鍵盤中錄入的信息保存到檔案中 176

實例127 一個檔案變成多個小檔案 178

實例128 多個小檔案合成一個檔案 181

實例129 統計指定檔案中的字元個數 183

實例130 對象的序列化與反序列化 185

實例131 同時顯示多個檔案 187

實例132 生成zip壓縮檔案 189

實例133 解壓縮zip檔案 192

實例134 生成Excel檔案 194

實例135 讀取Excel檔案中的內容 198

實例136 生成PDF檔案 199

實例137 讀取PDF檔案中的內容 203

實例138 用iText生成Word檔案 205

實例139 利用POI讀取Word檔案中的內容 208

7.3 字元流 209

實例140 按順序創建檔案 210

實例141 按順序讀取檔案 211

實例142 追加檔案內容 211

實例143 只顯示檔案中指定的字元 214

實例144 讀取jar包檔案 215

實例145 檔案的加密/解密操作 217

實例146 複製圖片 219

實例147 隨機讀寫Java類檔案 221

第3篇 Java面向對象編程

第8章 面向對象(教學視頻:72分鐘) 226

8.1 類 226

實例148 簡單的通訊錄類 226

實例149 簡單的長度單位轉換類 227

實例150 卡車和卡車司機之間的關係 229

實例151 雙色球 231

8.2 成員變數和方法 236

實例152 使用類作為成員變數 236

實例153 構造方法 237

實例154 使用靜態成員變數計算記憶體中實例化的對象數目 239

實例155 實現加減乘除的方法 240

8.3 面向對象的設計模式 241

實例156 Singleton單例模式 242

實例157 招聘(簡單工廠模式) 243

實例158 同學聚會(工廠方法模式) 244

實例159 圖書展(抽象工廠模式) 246

實例160 汽車適配器(Adapter適配器模式) 248

8.4 垃圾回收 250

實例161 垃圾回收的機制 250

第9章 面向對象的四大特徵(教學視頻:65分鐘) 252

9.1 抽象 252

實例162 求自定義幾何圖形的面積和周長 252

實例163 使用抽象方法實現的支票夾 254

9.2 封裝 257

實例164 世界小姐參賽資格 257

實例165 自定義複數類 261

9.3 繼承 264

實例166 轎車與本田的關係 264

實例167 繼承關係的載入順序 266

實例168 如何訪問同名的方法或變數 268

實例169 super()方法的使用 271

實例170 this方法的使用 274

實例171 一張考試成績單 275

實例172 銀行自動存取一體機 278

9.4 多態 284

實例173 飲食文化 284

實例174 使用構造方法的重載計算課程的GPA值 287

第10章 內部類與接口(教學視頻:41分鐘) 290

10.1 成員內部類 290

實例175 成員內部類的使用規範 290

實例176 猜謎 292

10.2 方法內部類 294

實例177 局部內部類的使用規範 294

實例178 獎學金的評分標準 295

10.3 匿名內部類 297

實例179 匿名內部類的使用規範 297

實例180 電話與行動電話 299

10.4 靜態內部類 300

實例181 靜態內部類的使用規範 300

實例182 蘋果的來歷 302

10.5 接口 303

實例183 求n的冪數與倍數 304

實例184 商品訂單 306

實例185 多功能排序 310

第11章 Java常用類(教學視頻:66分鐘) 315

11.1 數學Math類 315

實例186 求圓周率∏值 315

實例187 求對數值 316

實例188 使用取整函式 317

11.2 Random類的使用 318

實例189 隨機數 319

實例190 驗證碼 322

11.3 Date類和Calendar類 324

實例191 使用Date類獲取系統的當前時間 324

實例192 使用DateFormat類獲取系統的當前時間 325

實例193 使用GregorianCalendar類獲取系統的當前時間 326

實例194 使用SimpleDateFormat類獲取系統的當前時間 329

實例195 顯示某年某月某一周的信息 330

實例196 顯示某年某月的信息 332

實例197 時間的設定與獲取 334

實例198 萬年曆(農曆和陽曆的互換) 337

11.4 Formatter類的使用 347

實例199 時間格式轉換符的使用 347

實例200 數據格式轉換符的使用 349

11.5 System類的使用 351

實例201 記錄程式執行的時間 351

實例202 程式的退出 352

實例203 獲取程式運行環境的信息 353

第4篇 Java高級開發技術

第12章 集合(教學視頻:45分鐘) 358

12.1 Set 358

實例204 利用HashSet刪除學生 358

實例205 不重複的隨機數序列 360

實例206 運用映射的相關類(Map) 363

實例207 運用集的相關類(Set) 365

12.2 List 368

實例208 增加所需的元素 368

實例209 Iterator疊代器的使用 370

實例210 誰是幸運兒 371

實例211 自定義Queue佇列 373

實例212 List、Set與Array之間的相互轉換 375

實例213 二分查找法的實現方法 377

實例214 模擬作業系統的進程調度 379

實例215 利用棧將字元串逆序輸出 381

實例216 動態的數組鍊表 382

實例217 你能猜出魚是誰的寵物嗎? 387

實例218 使用Collections類對List的排序操作 393

實例219 LinkedList的添加刪除操作 395

實例220 運用Vector 397

實例221 改變Properties檔案中的鍵值 399

第13章 多執行緒編程(教學視頻:121分鐘) 405

13.1 多執行緒的五種基本狀態 405

實例222 啟動執行緒 405

實例223 參賽者的比賽生活(執行緒休眠喚醒) 407

實例224 資源搜尋並下載(執行緒等待和通報) 410

實例225 模擬淘寶購物買賣雙方交易問題 412

實例226 攜子之手 與子偕老(join) 415

實例227 執行緒讓步(Yield) 417

實例228 會走動的鐘(多執行緒) 419

實例229 變形金剛中的守護神(守護執行緒) 424

實例230 查看JVM中所有的執行緒的活動狀況 426

實例231 模仿網路快車下載工具下載檔案 428

13.2 多執行緒的同步與互斥 436

實例232 多執行緒同步方法的實例 436

實例233 ATM存取一體機(執行緒同步互斥) 437

實例234 我的錢哪裡去了 440

實例235 門鎖打不開了(死鎖) 444

實例236 門鎖終於被打開了(解決死鎖) 446

實例237 一個死鎖的例子 448

13.3 執行緒的優先權 451

實例238 排座位(執行緒優先權) 451

實例239 賽車 454

13.4 定時器 458

實例240 定時器(Timer) 458

實例241 數字定時器 459

13.5 執行緒連線池 462

實例242 手術任務(執行緒池) 462

實例243 模擬人工服務台(執行緒連線池) 466

13.6 執行緒套用實例 471

實例244 下雪的村莊 472

實例245 小飛俠 474

實例246 飛流直下 477

實例247 多執行緒斷點續傳 479

實例248 滾動的珠子 485

實例249 餘額查詢 489

實例250 滾動的文字 492

實例251 漂浮效果 495

實例252 監視記憶體的使用情況 499

實例253 璀璨的星空 501

實例254 銀行和超市業務的模擬 505

第14章 泛型(教學視頻:43分鐘) 511

14.1 泛型基礎 511

實例255 一個關於泛型的簡單例子 511

實例256 帶兩個類型參數的泛型 513

實例257 有界類型程式示例 514

實例258 通配符使用示例 515

實例259 泛型方法使用示例 516

實例260 泛型接口示例 518

實例261 泛型實現坐標列印 519

14.2 泛型類的繼承 521

實例262 繼承泛型類示例 521

實例263 繼承非泛型類示例 522

實例264 泛型類的類型識別示例 523

實例265 強制類型轉換示例 525

14.3 擦拭 526

實例266 無限界的擦拭 526

實例267 有限界的擦拭 527

14.4 集合泛型類 528

實例268 Hashtable的泛型化 528

實例269 多功能畫筆 529

第15章 網路編程(教學視頻:52分鐘) 534

15.1 IP位址 534

實例270 獲取計算機名與IP位址 534

實例271 獲取網址的IP位址 535

實例272 判斷兩個網址的主機名是否一樣 536

實例273 測試IP的類型 537

實例274 查找主機 538

實例275 主機所支持的協定 539

15.2 URL類的使用 540

實例276 使用URL訪問網頁 540

實例277 URL的組成部分 541

實例278 通過指定的URL可以獲取網頁的原始碼 542

實例279 一對多通信模式 544

實例280 自製瀏覽器 549

實例281 掃描TCP連線埠 551

實例282 TCP協定伺服器 552

實例283 TCP協定客戶機 553

實例284 Socket連線信息 555

實例285 Echo服務的客戶端是如何實現的? 556

實例286 檢測本機的服務連線埠 558

實例287 下載的頁面不丟失連結 559

實例288 如何對網頁進行重新定向 560

實例289 在Internet上搜尋對象 560

實例290 LAN使用代理伺服器 562

實例291 BBS論壇伺服器端 567

實例292 UDP報文的傳送與接收 579

第16章 資料庫技術(教學視頻:38分鐘) 583

實例293 載入JDBC驅動程式 583

實例294 通過JDBC對資料庫進行查詢 584

實例295 資料庫更新 585

實例296 獲取資料庫的基本信息 586

實例297 獲取資料庫對SQL支持的信息 589

實例298 處理訪問資料庫出現的常見異常情況 591

實例299 在Servlet中連線資料庫 593

實例300 數據分頁顯示 595

實例301 批處理 601

實例302 事物處理 604

實例303 調用存儲過程 608

實例304 連線ODBC資料庫 611

實例305 資料庫中圖片檔案的存取 614

第17章 界面設計--Swing(教學視頻:88分鐘) 618

17.1 Swing組件介紹及套用 618

實例306 JFrame框架的套用 618

實例307 Border的使用 619

實例308 使用Icon組件顯示一張圖片 620

實例309 Icon接口的套用 621

實例310 JLabel組件 622

實例311 Icon套用到JLabel中 623

實例312 JButton的使用 624

實例313 在JButton上設定快捷鍵 625

實例314 設定默認按鈕 626

實例315 使用JCheckBox組件 627

實例316 JCheckBox事件處理 629

實例317 JRadioButton的使用 630

實例318 JComboBox的使用 632

實例319 利用ComboModel構造JComboBox 633

實例320 DefaultComboBoxModel的使用 635

實例321 建立有圖像的JComboBox 636

實例322 建立可自行輸入的JComboBox 637

實例323 JComboBox的事件處理 638

實例324 JTextField組件的使用 640

實例325 使用JTextArea組件 641

17.2 頁面布局及事件監聽 642

實例326 BorderLayout版面布局 643

實例327 FlowLayout布局管理 644

實例328 套用GridLayout設計版面 645

實例329 如何使用BoxLayout布局管理器 647

實例330 使用ActionEvent監聽組件 648

實例331 使用WindowAdapter實現滑鼠事件 649

實例332 使用MouseMotionListener監聽滑鼠 650

實例333 使用KeyListener監聽鍵盤 652

17.3 組件的綜合套用 654

實例334 計算器 654

實例335 創建樹選單 657

實例336 在節點中顯示詳細信息 658

第18章 Applet小應用程式(教學視頻:39分鐘) 662

實例337 不斷變大的文字 662

實例338 燈光掃描的效果 664

實例339 字型逐漸展開的效果 666

實例340 飛舞的氣球 668

實例341 逐漸浮現的圖片 671

實例342 火焰框線的特效 674

實例343 局部放大效果 677

實例344 水波蕩漾的效果 679

實例345 漫天飛花 682

實例346 動感影集 685

實例347 彩虹字 688

實例348 多功能按鍵 690

第19章 多媒體與圖像處理(教學視頻:51分鐘) 694

19.1 多媒體 694

實例349 測試音頻播放器 694

實例350 測試視頻播放器 696

實例351 視頻反色效果 698

實例352 實現一個錄音機 703

實例353 建立一個調色板 707

19.2 圖像處理 710

實例354 在計算機記憶體中創建一個圖像 710

實例355 會移動的圖像 712

實例356 將圖片進行180度旋轉 714

實例357 處理圖像的明暗度 716

實例358 如何將彩色圖轉化為灰度圖 721

實例359 銳化和模糊圖像 724

實例360 顯示一個圖像的輪廓 727

實例361 如何放大及拉伸圖像 730

第20章 JSP開發技術(教學視頻:62分鐘) 735

20.1 JSP基礎 735

實例362 網頁版的9×9乘法口訣 735

實例363 Java Servlet小程式 737

實例364 Servlet對表單的處理過程 738

實例365 獲取/修改JavaBeans中的內容 741

20.2 JSP程式設計 743

實例366 喜連大三元 743

實例367 運氣對對碰 748

實例368 文字樣式統計器 752

實例369 圖形統計器 754

20.3 垃圾信息投訴站 756

實例370 創建投訴表單 756

實例371 保存投訴的內容 760

實例372 實現投訴站的後台操作 762

實例373 取消投訴內容 764

實例374 站內信 767

20.4 網站線上評估系統 769

實例375 創建評估問卷 769

實例376 實現評估的後台操作 771

實例377 查看評估結果 773

第5篇 Java綜合案例

第21章 模擬伺服器與客戶端之間的通信(教學視頻:13分鐘) 778

21.1 實例介紹 778

21.2 框架設計 779

21.2.1 項目的總體結構 779

21.2.2 搭建開發環境 779

21.2.3 確定項目工程目錄 779

21.3 公用模組設計 780

21.4 客戶端程式 780

21.4.1 客戶端的工作流程 780

21.4.2 編寫客戶端的源程式 781

21.4.3 客戶端源的程式解讀 783

21.5 伺服器端程式 785

21.5.1 伺服器端的工作流程 785

21.5.2 編寫伺服器端的源程式 785

21.5.3 伺服器端的源程式解讀 788

21.6 小結 790

第22章 書店管理系統(教學視頻:56分鐘) 791

22.1 實例分析 791

22.2 系統設計 792

22.2.1 結構分析 792

22.2.2 搭建環境 792

22.2.3 創建目錄 793

22.3 資料庫設計 793

22.4 公用模組設計 795

22.4.1 data包中的類 795

22.4.2 util包中的類 798

22.5 用戶登錄模組 800

22.6 系統主界面 802

22.7 基礎維護模組 804

22.7.1 圖書維護 804

22.7.2 用戶維護 811

22.8 借還管理模組 818

22.8.1 借書 818

22.8.2 還書 821

22.9 查詢管理模組 824

22.9.1 圖書查詢 824

22.9.2 用戶查詢 826

22.10 系統管理模組 829

22.11 小結 831

作者簡介

張帆,畢業於西安交通大學。畢業後曾經先後任職於方正奧德等知名IT企業,長期從事Java企業級套用開發。有8年以上的Java開發經驗,精通Java語言,對Eclipse、Spring、Hibernate等開發技術與框架有豐富的使用經驗,對Java圖形開發及分散式開發有深入研究。目前致力於Java加密與解密技術的研究。曾經參與開發了金融、證券、保險、教育等多個領域的多個大型項目。平時愛好閱讀和旅遊。

相關詞條

相關搜尋

熱門詞條

聯絡我們