出版時間:2008-7 出版社:電子工業(yè)出版社 作者:希爾特 頁數(shù):398 字數(shù):653000 譯者:張君施
Tag標簽:無
前言
多年來,許多朋友和讀者都在問我,什么時候為.Java寫一本烹飪式的書(cookbook),以分享我在編程時所使用的一些技術(shù)和方法?其實我有這個想法也由來已久,但實在是無法從我本已繁忙的寫作計劃中擠出時間來完成它。因為許多讀者都知道,我的著作涉及編程的許多方面,尤其關(guān)注的是Java,C/C++及c#。由于這些語言的版本更新周期非???,所以我必須幾乎將全部精力花在更新我的著作上,以覆蓋這些語言的最新版本。有幸的是,2007年初,我終于有片刻閑暇,能夠集中精力寫作這本Java的“烹飪書”了。必須承認的是,寫作這本書很快就成為了我最高興的工作之一。 以傳統(tǒng)的烹飪式圖書格式為基礎(chǔ),這本書提煉出了許多通用技術(shù)的本質(zhì)特性,并將它們匯集成一系列的逐步講解的“配方”。每個配方都描述一組關(guān)鍵“配料”,比如類、接口和方法。然后,書中展示了將這些成分集成到一個代碼序列中的步驟,以獲得欺望的結(jié)果。這種組織便于查找所感興趣的技術(shù),也使得將技術(shù)付諸實踐變得簡單?! 嶋H上,“付諸實踐”是本書的一個重要部分。我相信一本好的編程類圖書應(yīng)包含兩個因素:扎實的理論和實際的應(yīng)用。配方中的逐步指導(dǎo)和討論提供了理論。為了將這些理論用于實踐,每個配方都包含一個完整的代碼例子。通過具體的、明確的方法,例子演示了如何應(yīng)用配方。換句話說,例子消除了“猜想的工作”,并由此節(jié)省了時間。 盡管不可能將某個人所期望的每一個配方都包含在一本菜譜式圖書中(可能的配方數(shù)量幾乎是無限的),但我盡量涉及較廣的主題范圍。挑選配方的標準會在第1章詳細討論。簡而言之,我所挑選的配方對多數(shù)程序員都是有用的,或者是回答那些經(jīng)常被問及的問題。盡管有這些標準,但要對它們做出取舍,仍然是困難的。這是寫作本書時遇到的最大挑戰(zhàn)。根本而言,它們體現(xiàn)在經(jīng)驗、判斷力和直覺上。樂觀地估計,本書中所包含的內(nèi)容能滿足每一位程序員的口味。
內(nèi)容概要
著名編程類作家Herbert Scllildt的這本最新著作是如何在Java中執(zhí)行各種編程任務(wù)的技術(shù)總結(jié)。本書采用知名的烹飪式圖書架構(gòu),以配方的形式詳細講解和展示了如何完成一個特定的操作,這些配方包含以下方面的內(nèi)容:使用字符串和正則表達式、文件處理、格式化數(shù)據(jù)、使用集合、applet和servk、多線程編程、Swing及其他流行的Java應(yīng)用等。這些經(jīng)過優(yōu)化篩選的配方,在實際的編程中重復(fù)使用率相當(dāng)高,通過所有這些配方的學(xué)習(xí),讀者將快速領(lǐng)會Java編程技巧,成為一名優(yōu)秀的Java編程開發(fā)人員。 本書適合開發(fā)人員學(xué)習(xí)Java編程使用,也可作為相關(guān)人員的參考資料。
書籍目錄
第1章 概述 1.1 本書的內(nèi)容 1.2 配方是如何組織的 1.3 一些警告 1.4 所要求的Java經(jīng)驗 1.5 Java的版本第2章 使用字符串和正則表達式 2.1 Java的字符串類概述 2.2 Java的正則表達式API 2.3 正則表達式介紹 2.4 以逆序排序字符串?dāng)?shù)組 2.5 當(dāng)排序字符串?dāng)?shù)組時忽略大小寫差異 2.6 當(dāng)查找或替換子串時忽略大小寫差異 2.7 利用split()將字符串分成幾塊 2.8 從字符串中取得鍵/值對 2.9 利用正則表達式API匹配并抽取子串 2.10 利用正則表達式API標記字符串第3章 文件處理 3.1 文件處理概述 3.2 處理錯誤的技巧 3.3 從文件讀字節(jié) 3.4 向文件寫字節(jié) 3.5 緩沖基于字節(jié)的文件I/O 3.6 從文件讀字符 3.7 向文件寫字符 3.8 緩沖基于字符的文件I/O 3.9 讀/寫隨機訪問文件 3.10 獲取文件屬性 3.11 設(shè)置文件屬性 3.12 列目錄 3.13 壓縮/解壓縮數(shù)據(jù) 3.14 創(chuàng)建ZIP文件 3.15 解壓縮ZIP文件 3.16 序列化對象第4章 格式化數(shù)據(jù) 4.1 Formatter概述 4.2 NumberFormat和DateFormat概述 4.3 4個采用Formatter的簡單數(shù)字格式化技術(shù) 4.4 使用Formatter垂直對齊數(shù)字數(shù)據(jù) 4.5 使用Formatter左調(diào)整輸出 4.6 使用Formatter格式化時間和日期 4.7 用Formatter指定地域 4.8 使用帶Formatter的流 4.9 使用printf()顯示格式化數(shù)據(jù) 4.10 使用DateFormat格式化時間和日期 4.11 通過SimpleDateFormat模式格式化時間和日期 4.12 使用NumberFormat格式化數(shù)字值 4.13 使用NumberFormat格式化貨幣值 4.14 通過DecimalFormat格式化數(shù)字值第5章 使用集合 5.1 集合概述 5.2 映射概述 5.3 算法 5.4 基本的集合技術(shù) 5.5 使用列表 5.6 使用組 5.7 使用Comparable在一個排序的集合中保存對象 5.8 對集合使用Comparator 5.9 迭代集合 5.10 使用Deque創(chuàng)建隊列或堆棧 5.11 顛倒、旋轉(zhuǎn)和隨機化列表 5.12 排序并查找列表 5.13 創(chuàng)建經(jīng)檢驗的集合 5.14 創(chuàng)建同步集合 5.15 創(chuàng)建不可更改的集合 5.16 基本的映射技術(shù) 5.17 將Properties列表轉(zhuǎn)換成HashMap第6章 applet和setvlet 6.1 applet概述 6.2 servlet概述 6.3 創(chuàng)建基于AWT的applet骨架 6.4 創(chuàng)建基于Swing的applet骨架 6.5 在Swing applet中創(chuàng)建GUI并處理事件 6.6 直接在applet的界面中繪圖 6.7 將參數(shù)傳遞給applet 6.8 使用AppletContext顯示W(wǎng)eb頁面 6.9 使用GenericServlet創(chuàng)建簡單的servlet 6.10 在servlet中處理HTTP請求 6.11 對servlet使用cookie第7章 多線程編程 7.1 多線程編程基礎(chǔ) 7.2 通過實現(xiàn)Runnable創(chuàng)建線程 7.3 通過擴展Thread創(chuàng)建線程 7.4 使用線程名和ID 7.5 等待線程結(jié)束 7.6 同步線程 7.7 線程間通信 7.8 暫停、恢復(fù)和停止線程 7.9 使用守護線程 7.10 中斷線程 7.11 設(shè)置并獲得線程的優(yōu)先級 7.12 監(jiān)視線程的狀態(tài) 7.13 使用線程組第8章 Swing 8.1 Swing概述 8.2 組件與容器 8.3 布局管理器概述 8.4 事件處理 8.5 創(chuàng)建一個簡單的Swing應(yīng)用程序 8.6 設(shè)置內(nèi)容面板的布局管理器 8.7 使用JLabel 8.8 創(chuàng)建一個簡單的下壓按鈕 8.9 將JButton用于圖標、HTML和助記符 8.10 創(chuàng)建一個觸發(fā)按鈕 8.11 創(chuàng)建復(fù)選框 8.12 創(chuàng)建單選鈕 8.13 用JTextField輸入文本 8.14 使用JList 8.15 使用滾動條 8.16 使用JScrollPane處理滾動 8.17 在JTable中顯示數(shù)據(jù) 8.18 處理JTable事件 8.19 在JTree中顯示數(shù)據(jù) 8.20 創(chuàng)建一個主菜單第9章 配方集錦 9.1 通過HTTP連接訪問資源 9.2 利用信號量 9.3 從線程返回一個值 9.4 利用反射獲得運行時的類信息 9.5 利用反射動態(tài)地創(chuàng)建對象并調(diào)用方法 9.6 創(chuàng)建定制的異常類 9.7 安排未來執(zhí)行的任務(wù)
章節(jié)摘錄
第1章 概述 本書是如何在Java中執(zhí)行各種編程任務(wù)的技術(shù)總結(jié)。正如書名所暗示的那樣,它采用知名的烹飪式圖書(cookbook)的形式,每一個配方(recipe)都展示了如何完成一個特定的操作。例如,書中對如下操作都開出了配方:從文件讀字節(jié)、迭代集合、格式化數(shù)字數(shù)據(jù)、構(gòu)造Swin9組件、創(chuàng)建servlet等。烹飪書中的菜譜描述的是配料的組成以及為準備一道美味而必須完成的一系列步驟,與此相同,本書中描述的是一套關(guān)鍵的程序元素以及為完成編程任務(wù)而必須使用這些元素的步驟序列?! 「径裕緯哪康木褪窃诔绦蜷_發(fā)過程中節(jié)省讀者的時間和精力。許多編程任務(wù)都由一套API類、接口以及必須以某種順序?qū)崿F(xiàn)的方法組成。麻煩的是,有時我們并不知道該使用哪些API類,或者以什么順序調(diào)用方法。我們不必費力地在眾多API文檔和在線教程中尋找完成某個任務(wù)的答案,只需看一看它的配方即可。每個配方展示的都是構(gòu)思一個解決方案的一種方法,描述一些必要的元素以及使用它們的順序。利用這些信息,我們能夠設(shè)計出滿足特定需求的方案?! ?.1 本書的內(nèi)容 沒有一本烹飪書能窮盡天下美食,作者必須對其內(nèi)容進行取舍。對這本“烹飪書”而言,也面臨相同的情況。在挑選本書中的配方時,我將重點放在如下幾個方面: 字符串處理(包括正則表達式) 文件處理 格式化數(shù)據(jù) applet和servlet Swing 集合框架 多線程 之所以選擇這幾個方面,是因為它們與絕大多數(shù)程序員都有關(guān)(我特意避免了一些專門化的主題,它們只適合有限的場合)。每一個這樣的類別就成為了每一章的基礎(chǔ)。除了與前面的主題相關(guān)的那些配方外,還有幾個我希望包含在其中的配方,但由于它們不適合成為完整的一章,因此我將它們放在最后一章中?! ‘?dāng)然,挑選主題只不過是精選過程的開始,在每個類別中,還必須決定應(yīng)該包含哪些內(nèi)容和舍棄哪些內(nèi)容。一般而言,如果某個配方滿足如下兩個標準,則會將它包含進來: 1.技術(shù)對絕大多數(shù)程序員都是有用的?! ?.它提供經(jīng)常被問及的編程問題的答案。
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載