出版時(shí)間:2004-9-1 出版社:清華大學(xué)出版社 作者:鄧勁生,Herbert Schildt,James holmes 頁數(shù):339 字?jǐn)?shù):467000 譯者:鄧勁生
Tag標(biāo)簽:無
內(nèi)容概要
本書揭示了Java程序員如何創(chuàng)建高質(zhì)量軟件的奧秘。Herbert Schildt 和James Holmes兩位編程大師通過將Java應(yīng)用于某些有趣、實(shí)用的計(jì)算機(jī)問題和編程任務(wù)中,全面展示了Java語言的強(qiáng)大功能、敏捷性、多樣性和藝術(shù)性。本書各章內(nèi)容分別涉及到Java精髓、遞歸下降的表達(dá)式解析器、用Java實(shí)現(xiàn)語言解釋器、用Java創(chuàng)建下載管理器、用Java實(shí)現(xiàn)E-mail客戶端和Internet搜索、用Java修飾HTML、顯示統(tǒng)計(jì)圖表、金融應(yīng)用中的Applet和Servlet、基于AI的問題求解等,每章給出的示例代碼都可以直接運(yùn)行,無需修改,而且讀者可以從www.osborne.com站點(diǎn)上免費(fèi)下載這些代碼。本書是亞馬遜網(wǎng)站上的五星級圖書,相信讀者能夠通過研讀本書大大提高自己的Java開發(fā)能力。本書代碼示例易懂有趣,設(shè)計(jì)思想獨(dú)特,定會使您受益匪淺!
書籍目錄
第1章 Java精髓 1 1.1 簡單數(shù)據(jù)類型和對象:完美的平衡 2 1.2 通過垃圾回收實(shí)現(xiàn)內(nèi)存管理 3 1.3 完美的簡單多線程模型 3 1.4 完全集成的異常機(jī)制 4 1.5 對多態(tài)性支持的改進(jìn) 5 1.6 通過字節(jié)碼保證可移植性和安全性 5 1.7 豐富的Java API 6 1.8 Applet 7 1.9 繼續(xù)變革 7 第2章 遞歸下降的表達(dá)式解析器 9 2.1 表達(dá)式 10 2.2 解析表達(dá)式 11 2.3 表達(dá)式的解析 11 2.4 表達(dá)式的分解 13 2.5 一個(gè)簡單的表達(dá)式解析器 16 2.6 向解析器中添加變量 24 2.7 遞歸下降解析器中的語法檢查 34 2.8 計(jì)算器Applet 34 2.9 一些嘗試 37 第3章 使用Java實(shí)現(xiàn)語言解釋器 38 3.1 解釋何種計(jì)算機(jī)語言 39 3.2 解釋器概述 40 3.3 Small BASIC解釋器 41 3.4 Small BASIC表達(dá)式解析器 61 3.4.1 Small BASIC的表達(dá)式 61 3.4.2 Small BASIC的標(biāo)識符 62 3.5 解釋器 66 3.5.1 InterpreterException類 67 3.5.2 SBasic構(gòu)造函數(shù) 67 3.5.3 關(guān)鍵字 68 3.5.4 run()方法 70 3.5.5 sbInterp()方法 71 3.5.6 賦值 72 3.5.7 PRINT語句 73 3.5.8 INPUT語句 75 3.5.9 GOTO語句 76 3.5.10 IF語句 78 3.5.11 FOR循環(huán) 79 3.5.12 GOSUB 82 3.5.13 END語句 83 3.6 Small BASIC的使用 83 3.7 對解釋器進(jìn)行增強(qiáng)和擴(kuò)展 86 3.8 創(chuàng)建自己的計(jì)算機(jī)語言 86 第4章 使用Java創(chuàng)建下載管理器 88 4.1 深入理解Internet下載流程 89 4.2 下載管理器概述 89 4.3 Download類 90 4.3.1 Download類的變量 94 4.3.2 Download類的構(gòu)造函數(shù) 94 4.3.3 download()方法 95 4.3.4 run()方法 95 4.3.5 stateChanged()方法 99 4.3.6 Action和Accessor方法 99 4.4 ProgressRenderer類 99 4.5 DownloadsTableModel類 100 4.5.1 addDownload()方法 103 4.5.2 clearDownload()方法 103 4.5.3 getColumnClass()方法 103 4.5.4 getValueAt()方法 104 4.5.5 update()方法 104 4.6 DownloadManager類 105 4.6.1 DownloadManager類的變量 111 4.6.2 DownloadManager類的構(gòu)造函數(shù) 111 4.6.3 verifyUrl()方法 111 4.6.4 tableSelectionChanged()方法 112 4.6.5 updateButtons()方法 113 4.6.6 動作事件的處理 114 4.7 編譯并運(yùn)行下載管理器 114 4.8 改進(jìn)下載管理器 115 第5章 用Java實(shí)現(xiàn)E-mail客戶端 116 5.1 E-mail內(nèi)幕 117 5.1.1 POP3 117 5.1.2 IMAP 117 5.1.3 SMTP 118 5.1.4 發(fā)送和接收E-mail的一般過程 118 5.2 JavaMail API 118 5.3 一個(gè)簡單的E-mail客戶端 120 5.3.1 ConnectDialog類 121 5.3.2 DownloadingDialog類 126 5.3.3 MessageDialog類 128 5.3.4 MessagesTableModel類 135 5.3.5 EmailClient類 139 5.4 編譯并運(yùn)行E-mail客戶端 156 5.5 對基本E-mail客戶端的擴(kuò)展 157 第6章 使用Java搜索Internet 158 6.1 Web搜索程序基礎(chǔ) 159 6.2 遵守Robot協(xié)議 160 6.3 Search Crawler概述 161 6.4 SearchCrawler類 162 6.4.1 SearchCrawler類的變量 179 6.4.2 SearchCrawler類的構(gòu)造函數(shù) 179 6.4.3 actionSearch()方法 180 6.4.4 search()方法 182 6.4.5 showError()方法 185 6.4.6 updateStats()方法 185 6.4.7 addMatch()方法 186 6.4.8 verifyUrl()方法 187 6.4.9 isRobotAllowed()方法 188 6.4.10 downloadPage()方法 190 6.4.11 removeWwwFromUrl()方法 191 6.4.12 retrieveLinks()方法 192 6.4.13 searchStringMatches()方法 198 6.4.14 crawl()方法 199 6.5 Web搜索程序的編譯與運(yùn)行 202 6.6 對Web搜索程序的思考 203 第7章 使用Java提交HTML 205 7.1 使用JEditorPane提交HTML 206 7.2 處理超鏈接事件 206 7.3 編寫Mini Web瀏覽器 207 7.3.1 MiniBrowser類 208 7.3.2 MiniBrowser類的變量 213 7.3.3 MiniBrowser類的構(gòu)造函數(shù) 214 7.3.4 actionBack()方法 214 7.3.5 actionForward()方法 215 7.3.6 actionGo()方法 215 7.3.7 showError()方法 216 7.3.8 verifyUrl()方法 216 7.3.9 showPage()方法 217 7.3.10 updateButtons()方法 218 7.3.11 hyperlinkUpdate()方法 219 7.4 Mini Web瀏覽器的編譯與運(yùn)行 220 7.5 HTML提交程序的應(yīng)用前景 221 第8章 統(tǒng)計(jì). 圖表與Java 222 8.1 樣本. 總體. 分布與變量 223 8.2 基本統(tǒng)計(jì)值 223 8.2.1 平均數(shù) 224 8.2.2 中位數(shù) 224 8.2.3 眾數(shù) 225 8.3 方差和標(biāo)準(zhǔn)差 227 8.4 回歸方程式 228 8.5 Stats類的完整代碼 232 8.6 繪圖數(shù)據(jù) 235 8.6.1 數(shù)據(jù)的縮放 236 8.6.2 Graphs類 236 8.6.3 Graphs類的final變量和實(shí)例變量 241 8.6.4 Graphs類的構(gòu)造函數(shù) 242 8.6.5 paint()方法 244 8.6.6 bargraph()方法 247 8.6.7 scatter()方法 247 8.6.8 regplot()方法 248 8.7 一個(gè)統(tǒng)計(jì)表的應(yīng)用 248 8.7.1 StatsWin類的構(gòu)造函數(shù) 253 8.7.2 itemStateChanged()事件處理器 254 8.7.3 actionPerformed()方法 255 8.7.4 shutdown()方法 255 8.7.5 createMenu()方法 255 8.7.6 DataWin類 255 8.7.7 聯(lián)合使用 256 8.8 創(chuàng)建一個(gè)簡單的統(tǒng)計(jì)Applet 258 8.9 一點(diǎn)嘗試 260 第9章 金融應(yīng)用中的Applet和Servlet 261 9.1 計(jì)算貸款的定期還款額 262 9.1.1 RegPay的成員 266 9.1.2 init()方法 266 9.1.3 actionPerformed()方法 269 9.1.4 paint()方法 269 9.1.5 compute()方法 270 9.2 計(jì)算投資的長期收益 270 9.3 計(jì)算達(dá)到某項(xiàng)長期收益目標(biāo)所需的投資本金 274 9.4 計(jì)算達(dá)到某項(xiàng)期望年金所需的初始投資 278 9.5 根據(jù)給定投資計(jì)算年金的最大值 282 9.6 計(jì)算某項(xiàng)貸款的賬戶余額 286 9.7 創(chuàng)建用于金融類計(jì)算的Servlet 290 9.7.1 使用Tomcat 291 9.7.2 測試Servlet 291 9.7.3 把RegPay轉(zhuǎn)換成Servlet 292 9.7.4 RegPayS程序 292 9.8 一些嘗試 296 第10章 基于AI的問題求解 297 10.1 表示法和相關(guān)術(shù)語 298 10.2 組合爆炸問題 299 10.3 搜索技術(shù) 300 10.4 問題的描述 301 10.5 FlightInfo類 303 10.6 深度優(yōu)先搜索 304 10.7 廣度優(yōu)先搜索 313 10.8 添加啟發(fā)信息 316 10.8.1 爬山搜索 317 10.8.2 爬山搜索的分析 322 10.8.3 最小代價(jià)搜索 323 10.8.4 最小代價(jià)搜索的分析 324 10.9 查找多個(gè)解 324 10.9.1 路徑刪除 325 10.9.2 節(jié)點(diǎn)刪除 326 10.10 查找最優(yōu)解 331 10.11 回到丟失鑰匙的例子 336
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載