Java JDK 7實例寶典( 簡體 字) | |
作者:韓雪,郭天嬌 | 類別:1. -> 程式設計 -> JAVA -> Java |
出版社:電子工業出版社 | 3dWoo書號: 37099 詢問書籍請說出此書號! 有庫存 NT售價: 445 元 |
出版日:1/1/2014 | |
頁數:636 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787121217074 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第1章 Java基礎 1
1.1 轉換基本數據類型 1 1.2 Java的運算符 3 1.3 控制程序的流程 9 1.4 計算階乘 11 1.5 實現命令行程序 12 第2章 Java面向對象程序設計 14 2.1 復數類 14 2.2 equals、hashCode和clone方法 17 2.3 Java的參數傳遞 20 2.4 自定義形狀類 21 2.5 類的加載順序 26 2.6 方法和變量在繼承時的覆蓋與隱藏 28 2.7 排序類 31 2.8 Singleton(單例)模式 37 2.9 Factory(工廠)模式 39 2.10 Adapter(適配器)模式 41 第3章 數字 43 3.1 數字與數字封裝類 43 3.2 格式化數字 45 3.3 數字的舍入 46 3.4 轉換數字的進制 50 3.5 生成隨機數 51 3.6 處理大數字 53 第4章 數組與集合 58 4.1 使用Arrays 58 4.2 求質數 60 4.3 動態調整數組長度 62 4.4 矩陣 63 4.5 ArrayList、Vector和LinkedList 73 4.6 生成不重復的隨機數序列 78 4.7 自定義隊列 81 4.8 對List排序 83 4.9 HashSet、LinkedHashSet和TreeSet 85 4.10 列表、集合與數組的互相轉換 88 4.11 HashMap、HashTable、LinkedHashMap和TreeMap 89 4.12 對Map排序 93 4.13 Properties屬性文件 95 第5章 字符串 97 5.1 使用String 97 5.2 基本數據類型與字符串的轉換 101 5.3 判斷Java標識符 103 5.4 使用StringBuffer 104 5.5 IP地址轉換成整數 107 5.6 18位身份證號碼格式驗證 109 5.7 表達式解析器 111 5.8 字符串編碼的轉換 119 5.9 字符串對齊器 122 5.10 密碼加密與驗證 125 5.11 制作命令行程序 127 5.12 使用StringTokenizer 131 5.13 使用正則表達式操作字符串 133 5.14 使用正則表達式驗證電話號碼格式 141 第6 章 Java異常處理 143 6.1 throw、throws、try和catch 143 6.2 自定義異常類 145 6.3 使用finally 147 6.4 使用異常的技巧與原則 150 第7章 IO(輸入輸出)流 153 7.1 獲取文件的屬性信息 153 7.2 列出指定目錄下的文件 155 7.3 創建文件和目錄 157 7.4 刪除文件和目錄 161 7.5 移動文件和目錄 163 7.6 復制文件和目錄 167 7.7 一個簡單的文件搜索器 171 7.8 讀文件 174 7.9 寫文件 179 7.10 添加內容到文件尾 181 7.11 文件的分割與合并 183 7.12 從鍵盤接收數據并輸出到文件 186 7.13 使用StreamTokenizer統計文件的字符數 187 7.14 序列化和反序列化對象 190 7.15 控制對象的序列化和反序列 192 7.16 讀jar包的資源文件 194 7.17 用Zip格式壓縮和解壓縮文件 196 7.18 操作Excel文件 201 7.19 操作PDF文件 205 7.20 自定義日志文件類 210 第8章 線程 214 8.1 定義和啟動線程 214 8.2 停止線程 216 8.3 線程互斥 218 8.4 線程協作 221 8.5 線程join 223 8.6 生產者/消費者問題 225 8.7 線程優先級 231 8.8 列出虛擬機中所有的線程 233 8.9 守護線程 235 8.10 線程池 237 8.11 一個線程死鎖的例子 241 8.12 定時器(Timer) 243 第9章 Java GUI 245 9.1 日歷 245 9.2 開窗戶游戲 251 9.3 標準型計算器 255 9.4 更改組件外觀 260 9.5 自定義對話框 262 9.6 制作歡迎畫面 264 9.7 一個簡單的編輯器 267 9.8 Swing的Drag和Drop 288 第10章 Java圖形 297 10.1 一個圓形的按鈕 297 10.2 捕捉屏幕 299 10.3 縮放圖片 302 10.4 2D圖形 306 10.5 3D圖形 316 10.6 一個時鐘程序 323 第11章 Java多媒體 331 11.1 滾動的消息 331 11.2 三維彈球 334 11.3 貪吃蛇游戲 338 11.4 Java聲音處理 348 11.5 媒體播放器 356 第12章 反射 361 12.1 instanceof操作符 361 12.2 獲取類的信息 362 12.3 動態調用類的方法 368 第13章 網絡編程 371 13.1 獲取URL的信息 371 13.2 Web瀏覽器 373 13.3 獲取IP地址和域名 382 13.4 HTTP客戶端 384 13.5 基本的Socket編程 385 13.6 HTTP服務器端 390 13.7 一個支持多線程的服務器框架 396 13.8 代理服務器 409 13.9 Telnet客戶端 413 13.10 UDP編程 415 13.11 聊天室服務器端 419 13.12 聊天室客戶端 426 13.13 FTP客戶端 432 第14章 數據庫 448 14.1 連接各種數據庫 448 14.2 獲得數據庫和表的元數據 453 14.3 查詢和更新數據庫 457 14.4 批處理 461 14.5 提交和回滾事務 463 14.6 使用PreparedStatement 467 14.7 讀寫二進制數據 468 14.8 讀寫Blob數據 470 14.9 使用ResultSet更新數據庫 473 14.10 使用RowSet 477 14.11 調用存儲過程 486 14.12 一個數據庫連接池 489 第15章 Applet 501 15.1 Applet時鐘 501 15.2 處理鼠標和鍵盤事件 503 15.3 英文打字游戲 507 15.4 Applet間的通信 516 15.5 漢諾塔游戲 518 第16章 Java與XML 536 16.1 用DOM處理XML文檔 536 16.2 用SAX處理XML文檔 543 16.3 用XSLT轉換XML 546 16.4 對象與XML文檔的轉換 549 第17章 JavaMail 552 17.1 使用SMTP協議發送簡單的郵件 552 17.2 發送帶附件的郵件 558 17.3 發送郵件給多人 560 17.4 使用POP3接收郵件 564 第18章 JSP與Servlet 578 18.1 獲取客戶端的真實IP地址 578 18.2 設置和讀取Cookie 579 18.3 JSP無刷新聊天室 583 18.4 上傳文件 587 18.5 用Servlet生成圖形驗證碼 592 18.6 用Servlet實現分頁查看數據庫 595 第19章 J2SE 7.0新特性 608 19.1 Java編程語法的加強 608 19.2 新的JDBC 4.1 611 19.3 流的新特性 614 19.4 并發加強 619 19.5 網絡加強新特性 623 19.6 2D加強 626 本書以J2SE 7.0為開發環境,選取Java應用的典型實例,循序漸進地介紹Java語言的各種開發方法和技巧。全書共有19個章節,169個實例,內容涉及Java語言基礎、面向對象程序設計、數字處理、數組與集合、字符串、異常處理、文件操作、多線程、Swing編程、圖形和多媒體編程、反射機制、網絡程序設計、數據庫編程、Applet、Java與XML、Java Mail、JSP與Servlet,并專門用一章介紹J2SE 7.0的新特性。本書內容豐富,結構清晰,選擇的實例緊貼實際應用,具有很強的實用性和針對性,力求讓讀者通過實例學到更多、更好的編程方法和技術。
Java語言是一種新型的網絡編程語言,其卓越的功能和特性為無數開發人員所推崇,越來越多的應用開發采用了基于Java技術的解決方案。Java語言也是一種真正面向對象的編程語言,它提升了應用程序的編程概念和開發思維。Java語言提供了豐富的開發類庫,為用戶編程提供了極大的支持和方便。
目前最新的Java標準開發環境是J2SE 7.0,它在1.4版本的基礎上增加了自動裝箱和拆箱、泛型編程、枚舉類型、可變長參數、靜態導入等功能,使編寫程序更加方便;強化了1.4版本中的線程編程,可以很方便地進行多線程編程。 為了幫助更多的Java開發人員提高開發技巧,掌握最新的Java特性,筆者精心編著了本書。本書以實例為主,Java的基本理論部分介紹相對較少,編程技巧和方法介紹很多,讀者在閱讀完本書后可以提高自身的編程技巧,并掌握J2SE 7.0的新特性。 本書在內容編排和目錄組織上都十分講究,爭取讓讀者能夠快速掌握實例的實現方法。統一按照實例功能來為章節命名,讓讀者明確知道每一節將實現什么實例。具體講解實例時,分為4個步驟,首先介紹實例的功能,然后介紹實現實例時的關鍵技術點,接著介紹實例的實現代碼和運行效果,最后對程序的關鍵部分進行解讀。本書的代碼具備良好的編程風格和詳盡的注釋,使讀者很容易理解程序代碼,并養成良好的編程風格。 本書特色 1.實例經典,內容豐富 本書實例豐富,共有19章169個實例,每個實例都緊貼實際應用,如用Servlet生成圖形驗證碼,具有很強的示范性和實用價值,讀者可以直接使用書中的實例解決實際問題。 2.側重編程技巧 本書所有的實例在Java的基本理論方面介紹不多,重點是講述常用、實用的編程技術。采用了多種設計模式,如Singleton、Adapter、MVC等模式,同時在實例中強調應避免的不良編程習慣。 3.以J2SE 7.0為開發環境 目前介紹J2SE 7.0新特性的書籍很少,很多開發人員對這些新特性不了解,在實際的項目開發中也很少使用這些新特性。本書用一章專門介紹J2SE 7.0的新特性,精心準備了19個實例,通過這些實例可以幫助讀者輕松掌握這些新特性的特點,并實際應用于項目開發中。讀者會發現,J2SE 7.0的新特性的確有利于提高開發效率。 4.層次清晰,主次分明 全書分為19個章節,包括Java技術的方方面面,章節之間的先后順序很重要。本書在章節安排上采用了由淺入深的策略:先介紹基本技術,為后面章節打好基礎;再介紹高級技術,并在實例中使用前面章節中介紹的技術,起到鞏固的作用。 在講解實例時,首先介紹實例的目標,讓讀者了解該實例要做什么,在腦海中形成一個實現思路;然后介紹實例中使用的關鍵技術點,幫助讀者解決實現思路中的問題;最后對代碼的關鍵部分進行解讀,幫助讀者掌握關鍵技術點。 5.編程風格良好,注釋詳細 每個實例的程序都是經過精心設計的,在實現實例功能的同時,注重程序運行的效率。程序代碼具備良好的編程風格,結構清晰,注釋非常詳細,能幫助讀者輕松地掌握實例的實現過程。 學習Java的心得體會 1.熟練掌握Java的基本語法 如果讀者會C編程,那么學習Java將會非常容易,學習基本語法時,重點理解各關鍵字的功能與用法,以及功能相似的關鍵字之間的區別,如continue和break。 2.理解Java面向對象的相關概念 面向對象是當今最成熟的程序設計方法,它有3個非常重要的特性:繼承、封裝和多態。Java是一種面向對象的程序設計語言,在Java中,一切都是對象,體現了面向對象的封裝性;Java類之間允許單重繼承,體現了繼承性;多態性主要體現在允許定義接口類、抽象類,子類能夠覆蓋和隱藏父類的變量和方法,也屬于多態性。讀者要理解面向對象的概念,掌握如何在Java中進行面向對象編程。 3.善于使用JDK自帶的幫助文檔 Java提供了非常豐富的類庫,要想掌握常用類的用法,最好的方法是查閱JDK自帶的幫助文檔,盡量看英文原版的,不要依賴于中文版的幫助文檔或API參考書籍。 4.多動手寫Java程序 學習Java的最終目標就是為了寫程序,解決問題。掌握了Java的基本語法、面向對象的概念,能夠讀懂簡單的例子后,接下來就要親手寫程序。第一步,把書上的例子在本機上運行通過;第二步,敢于修改書上的程序;第三步,合上書本,獨立編寫程序,即使程序的功能與書上的例子一樣。 5.多閱讀開源項目的源代碼 要想具備良好的編程風格,掌握好的編程技術、閱讀優秀的源代碼是一條捷徑。當前很多開源項目的源代碼都值得學習(如Apache組織的項目,以及JDK的源代碼)。在閱讀源代碼時,要注意兩點:第一,學習項目的整體框架,結合項目文檔,一步步地調試程序是最常用的手段;第二,學習代碼中的技巧、算法,這是一個積累的過程。 6.理解Java虛擬機的運行機理 Java之所以能夠跨平臺,主要是因為存在Java虛擬機。Java虛擬機運行在操作系統中,不同操作系統下的Java虛擬機不同。將Java類編譯成字節碼,在Java虛擬機中運行字節碼,使Java程序獨立于操作系統,具備跨平臺的能力。為了更好地理解Java程序的運行機理,編寫出更優秀、更高效的程序,讀者需要理解Java虛擬機的類加載機制和垃圾回收機制等。 本書包括的內容 第1章介紹Java基礎知識,實例包括:Java的基本數據類型、Java的各種運算符、Java程序的流程控制,以及如何在Java程序中使用命令行參數。 第2章介紹如何用Java進行面向對象的程序設計,實例包括:類的設計、對象的克隆、類的繼承、抽象類、變量和方法的覆蓋與隱藏、Java的參數傳遞、類的加載順序、接口的設計,以及程序設計中常用的設計模式,如單例模式、工廠模式和適配器模式。 第3章介紹Java中的數字,實例包括:數字的封裝類、數字的舍入、格式化數字、數字進制的轉換、生成隨機數,以及大數字的處理。 第4章介紹Java中的數組和集合,實例包括:使用Arrays類操作數組、利用數組求質數、動態調整數組的大小、利用二維數組實現矩陣、Java中各種List實現類的區別、結合Random和List實現一個不重復的隨機數序列、利用LinkedList實現一個先進先出的隊列、對List中的元素進行排序、Java中各種Set實現類的區別、集合與數組的相互轉化、Java中各種Map實現類的區別、對Map中的元素進行排序,以及常用于解析配置文件的Properties類。 第5章介紹Java的字符串操作,實例包括:判斷一個字符串是否是合法的Java標識符、18位身份證號碼格式的驗證、實現一個簡單的表達式解析器、對密碼進行加密和驗證、制作命令行程序,以及使用正則表達式驗證電話號碼的格式。 第6章介紹Java的異常處理,實例包括:用于聲明和拋出異常的throws和throw語句的用法、用于捕獲處理異常的try、catch和finally語句的用法、自定義異常類,以及使用異常的幾個原則。 第7章介紹Java的輸入輸出流,重點介紹文件輸入輸出流的處理,實例包括:獲取文件的描述信息、操作文件和目錄、讀寫文件、搜索文件、序列化和反序列化對象、壓縮和解壓縮文件、處理Excel和PDF文件,以及一個自定義的寫日志文件的類。 第8章介紹Java的線程,實例包括:線程的定義、線程的啟動與停止、線程的同步、線程join、線程的優先級、守護線程、線程的死鎖、定時器、用線程實現生產者和消費者例子,以及一個簡單的線程池。 第9章介紹利用Java的AWT和Swing工具包生成圖形用戶界面(GUI),實例包括:實現圖形日歷、開窗戶小游戲、標準型計算器、更改組件的外觀、自定義對話框、制作程序的歡迎畫面、一個簡單的文本編輯器,以及Swing控件的Drag和Drop。 第10章介紹Java的圖形處理,實例包括:實現一個圓形按鈕、捕捉屏幕、縮放圖片、畫2D和3D圖形,以及實現一個圓形的時鐘。 第11章介紹用Java處理多媒體,包括動畫、音頻和視頻的處理。實例包括:滾動的消息、三維彈球和貪吃蛇游戲、3種播放音頻的方法,以及實現一個媒體播放器。 第12章介紹Java的反射機制,實例包括:使用instanceof操作符判斷對象的類型、通過類名查看類的各種信息(如類聲明的屬性、構造方法、公有方法等),以及動態調用類的方法。 第13章介紹Java的網絡編程,實例包括:從URL中提取信息、Web瀏覽器、獲取IP地址和域名、訪問HTTP服務器的客戶端、實現HTTP服務器、基本的Socket編程、一個支持多線程的服務器框架、基于服務器框架的代理服務、訪問Telnet服務的客戶端、UDP編程、聊天室服務器和客戶端,以及訪問FTP站點的客戶端。 第14章介紹Java的數據庫編程,實例包括:連接各種數據庫、獲得數據庫和數據表的元數據、查詢和更新數據庫、SQL語句的批處理、事務的提交和回滾、使用PreparedStatement執行SQL語句、讀寫二進制數據到數據庫、讀寫Blob數據到數據庫、使用ResultSet更新數據庫、使用RowSet操作數據庫、調用存儲過程,以及實現一個數據庫連接池。 第15章介紹Applet編程,實例包括:實現一個Applet時鐘、在Applet中處理鍵盤和鼠標事件、英文打字游戲、兩個Applet間的通信,以及用Applet實現一個漢諾塔的游戲。 第16章介紹用Java 操作XML文檔,實例包括:用DOM處理XML文檔、用SAX處理XML文檔、用XSLT轉換XML,以及XML文檔與對象之間的相互轉換。 第17章介紹用Java收發郵件,實例包括:用SMTP協議發送簡單郵件、發送帶附件的郵件、發送郵件給多人,以及用POP3協議接收郵件。 第18章介紹JSP(Java Server Page)和Servlet技術,實例包括:獲取訪問JSP頁面的客戶端的真實IP地址、在JSP中讀取和設置Cookie、無刷新的JSP聊天室、在JSP中上傳文件、用Servlet生成圖形驗證碼,以及用Servlet實現分頁查看數據庫。 第19章介紹J2SE 7.0版本對Java語法更新的關鍵技術點,實例包括:Switch處理字符串變量,用二進制形式表示整數,Catch可以捕獲多個異常,JDK可以自動關閉相關資源,以及新版本JDBC的功能演示。 本書相關資源請到http://www.broadview.com.cn/21707下載。 適合閱讀本書的讀者 本書由韓雪、郭天嬌編寫,其中河北工業大學廊坊分校的韓雪老師負責編寫第1~10章,吉林工程技術師范學院的郭天嬌老師負責編寫第11~19章,本書具有知識全面、實例精彩、指導性強的特點,力求以全面的知識性及豐富的實例來指導讀者透徹學習Java各方面的技術。本書可以幫助Java初級、中級開發人員提高開發技能,掌握J2SE 7.0的新特性,書中的實例對高級開發人員也有一定的啟發意義。 作者 |