Java編程藝術(shù)

出版時(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

評論、評分、閱讀與下載


    Java編程藝術(shù) PDF格式下載


用戶評論 (總計(jì)3條)

 
 

  •   很特別適合有一定Java基礎(chǔ)的人看
  •   還可以,適合中級開發(fā)人員看看。
  •   幾個(gè)例子不是很經(jīng)典,主要代碼集中在界面上,感覺不出藝術(shù)的感覺。
 

250萬本中文圖書簡介、評論、評分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號-7