圖書信息
書名:Java範例開發大全作 者:張帆
出版社:清華大學出版社
出版時間:2010-6-1
ISBN:9787302222699
開本:16開
定價:99.00元
內容簡介
本書精心挑選了有代表意義的370餘個實例,詳細介紹了如何利用Java語言的強大功能來開發應用程式。本書附帶1張光碟,內容為本書中所有實例的多媒體語音教學視頻及書中的實例原始碼。本書內容豐富,實用性強,實例貼近生活,容易理解,而且書中每一個實例都經過仔細調試。本書適合Java初、中級學習人員學習和提高使用,也可以作為Java程式設計師案頭必備的參考資料。 本書共22章,內容涉及Java開發環境的搭建、Java基礎類型與運算符、條件控制語句、異常處理、數組、字元串、輸入輸出流、面向對象及其四大特徵、內部類與接口、Java常用類、集合、多執行緒編程、java泛型編程、網路編程、資料庫技術、界面設計Swing、Applet小應用程式、多媒體與圖像處理、JSP技術等。最後還介紹了模擬伺服器與客戶端之間的通信及書店管理系統兩個綜合案例,以提高讀者的實戰水平。
作者簡介
張帆,畢業於西安交通大學。畢業後曾經先後任職於方正奧德等知名IT企業,長期從事Java企業級套用開發。有8年以上的Java開發經驗,精通Java語言,對Eclipse、Spring、Hibernate等開發技術與框架有豐富的使用經驗,對Java圖形開發及分散式開發有深入研究。目前致力於Java加密與解密技術的研究。曾經參與開發了金融、證券、保險、教育等多個領域的多個大型項目。平時愛好閱讀和旅遊。圖書目錄
第1篇Java編程基礎第1章Java開發環境的搭建(教學視頻:9分鐘)2
1.1理解Java2
1.2搭建Java所需環境3
1.2.1下載JDK3
1.2.2安裝JDK4
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
實例13Java中的進制與移位運算符22
第3章條件控制語句(教學視頻:75分鐘)26
3.1if控制語句26
實例14判斷輸入的年份是否為閏年26
實例15抽獎活動27
3.2for語句28
實例16小九九乘法表28
實例17如何列出素數29
實例18Java中的遞歸31
實例19男生女生各多少人32
實例20求水仙花數34
實例21求任意一個正數的階乘35
實例22求n的n次方35
實例23利用for循環輸出幾何圖形36
實例24楊輝三角38
3.3while語句39
實例25求1到100之間的和39
實例26存上100元需要多少天40
實例27輸出100之間的所有偶數41
實例28如何判斷迴文數字42
3.4do…while語句43
實例29輸出100之間的所有奇數44
實例30求最大的隨機數44
3.5switch語句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.3try…catch捕獲異常65
實例46try…catch捕獲異常的實例66
實例47try…catch…finally捕獲異常的實例67
實例48try…catch嵌套捕獲異常的實例68
4.4throws聲明異常69
實例49throws聲明異常實例一69
實例50throws聲明異常實例二70
4.5throw拋出異常72
實例51throw拋出異常實例一72
實例52throw拋出異常實例二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字元串類String108
實例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
實例95Java合法標識符122
實例96顯示一周各星期的名稱123
實例97構造空心方框124
實例98這一天是星期幾125
實例99大小寫互換127
實例100輸出指定範圍的素數128
實例101我出現了幾次129
實例102算術表達式求值器129
實例103字元串對齊調整器137
實例104字元串的加密139
實例105使用正則表達式驗證電話號碼的格式141
6.2字元串快取類StringBuffer143
實例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
實例156Singleton單例模式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
實例169super()方法的使用271
實例170this方法的使用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.2Random類的使用318
實例189隨機數319
實例190驗證碼322
11.3Date類和Calendar類324
實例191使用Date類獲取系統的當前時間324
實例192使用DateFormat類獲取系統的當前時間325
實例193使用GregorianCalendar類獲取系統的當前時間326
實例194使用SimpleDateFormat類獲取系統的當前時間329
實例195顯示某年某月某一周的信息330
實例196顯示某年某月的信息332
實例197時間的設定與獲取334
實例198萬年曆(農曆和陽曆的互換)337
11.4Formatter類的使用347
實例199時間格式轉換符的使用347
實例200數據格式轉換符的使用349
11.5System類的使用351
實例201記錄程式執行的時間351
實例202程式的退出352
實例203獲取程式運行環境的信息353
第4篇Java高級開發技術
第12章集合(教學視頻:45分鐘)358
12.1Set358
實例204利用HashSet刪除學生358
實例205不重複的隨機數序列360
實例206運用映射的相關類(Map)363
實例207運用集的相關類(Set)365
12.2List368
實例208增加所需的元素368
實例209Iterator疊代器的使用370
實例210誰是幸運兒371
實例211自定義Queue佇列373
實例212List、Set與Array之間的相互轉換375
實例213二分查找法的實現方法377
實例214模擬作業系統的進程調度379
實例215利用棧將字元串逆序輸出381
實例216動態的數組鍊表382
實例217你能猜出魚是誰的寵物嗎?387
實例218使用Collections類對List的排序操作393
實例219LinkedList的添加刪除操作395
實例220運用Vector397
實例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
實例233ATM存取一體機(執行緒同步互斥)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
實例268Hashtable的泛型化528
實例269多功能畫筆529
第15章網路編程(教學視頻:52分鐘)534
15.1IP位址534
實例270獲取計算機名與IP位址534
實例271獲取網址的IP位址535
實例272判斷兩個網址的主機名是否一樣536
實例273測試IP的類型537
實例274查找主機538
實例275主機所支持的協定539
15.2URL類的使用540
實例276使用URL訪問網頁540
實例277URL的組成部分541
實例278通過指定的URL可以獲取網頁的原始碼542
實例279一對多通信模式544
實例280自製瀏覽器549
實例281掃描TCP連線埠551
實例282TCP協定伺服器552
實例283TCP協定客戶機553
實例284Socket連線信息555
實例285Echo服務的客戶端是如何實現的?556
實例286檢測本機的服務連線埠558
實例287下載的頁面不丟失連結559
實例288如何對網頁進行重新定向560
實例289在Internet上搜尋對象560
實例290LAN使用代理伺服器562
實例291BBS論壇伺服器端567
實例292UDP報文的傳送與接收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.1Swing組件介紹及套用618
實例306JFrame框架的套用618
實例307Border的使用619
實例308使用Icon組件顯示一張圖片620
實例309Icon接口的套用621
實例310JLabel組件622
實例311Icon套用到JLabel中623
實例312JButton的使用624
實例313在JButton上設定快捷鍵625
實例314設定默認按鈕626
實例315使用JCheckBox組件627
實例316JCheckBox事件處理629
實例317JRadioButton的使用630
實例318JComboBox的使用632
實例319利用ComboModel構造JComboBox633
實例320DefaultComboBoxModel的使用635
實例321建立有圖像的JComboBox636
實例322建立可自行輸入的JComboBox637
實例323JComboBox的事件處理638
實例324JTextField組件的使用640
實例325使用jtextarea組件641
17.2頁面布局及事件監聽642
實例326BorderLayout版面布局643
實例327FlowLayout布局管理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.1JSP基礎735
實例362網頁版的9×9乘法口訣735
實例363JavaServlet小程式737
實例364Servlet對表單的處理過程738
實例365獲取/修改JavaBeans中的內容741
20.2JSP程式設計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.1data包中的類795
22.4.2util包中的類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
創作背景
本書約定【實例介紹】:對需要解決的問題的已知條件和需要解決的部分做出說明,對於某些複雜的問題給出了舉例說明該題目的功能是什麼,以及要求是什麼。
【關鍵技術解析】:對實例中涉及的關鍵技術和解決問題的思路給出精闢的分析和說明,必要時對一些關鍵代碼進行分析。
【開發過程】:給出了解決問題的主要步驟及如何用Java語言編寫代碼來實現。在代碼中,對重要的變數或者複雜語句給出了注釋和解釋,對複雜的方法給出了功能介紹。
【難點剖析】:對於有一定難度的實例,給出了難點分析和解決方法。基礎知識部分中的難點剖析主要是分析初學者不易理解的內容,套用部分的難點剖析主要是給出難點代碼分析及思路擴展。
【拓展套用】:對實例中的重要知識點進行回顧,並給出了對實例進一步拓展的思路和拓展時所涉及的技術及方法。
配書光碟內容介紹
為了方便讀者的學習,本書附帶1張DVD光碟。內容如下:
*本書370餘個實例及2個案例的原始碼;
*本書370餘個實例及2個案例的多媒體視頻講解,包括實例的實現過程和運行演示;
*免費贈送的大量互補學習資料,包括編程講座視頻、編程電子書和套用系統等。
適合閱讀本書的讀者
*所有想學習Java語言的初學者;
*已經具備Java語言基礎,想進一步提升開發水平的人員;
*想參加初級、中級程式設計師考試的人員;
*大中專院校及相關社會培訓班的學生;
*希望作為案頭必備技術手冊的Java程式設計師。
閱讀本書的建議
*沒有Java語言基礎的讀者,建議從第1章順次閱讀並演練每一個實例。
*有一定Java語言基礎的讀者,可以根據實際情況有重點地選擇閱讀。
*對於每一個實例,先自己思考一下實現的思路,然後再閱讀,這樣學習效果更好。
*先對每一個實例的實現思路和實現過程完整地閱讀一遍,然後再結合光碟中的多媒體視頻講解動手實現一次,理解會更加深刻。