*數量非實際在台庫存 *完成訂單後正常情形下約兩周可抵台。 *本賣場提供之資訊僅供參考,以到貨標的為實際資訊。 印行年月:202402*若逾兩年請先於私訊洽詢存貨情況,謝謝。 台灣(台北市)在地出版社,每筆交易均開具統一發票,祝您中獎最高1000萬元。 書名:Effective Java (第3版 英文版) ISBN:9787115628992 出版社:人民郵電 著編譯者:約書亞 布洛克 頁數:376 所在地:中國大陸 *此為代購商品 書號:1615588 可大量預訂,請先連絡。 內容簡介 本書是經典Jolt獲獎作品《Effective Java》的第3版,對上一版進行了全面更新,涵蓋了從Java 5到Java 9的種種特性,是Java開發人員不可缺少的一本參考書。 本書分為12章,包含90個條目,形式簡潔。每個條目中都講述了對Java的獨到見解,闡明了如何編寫高效、優雅的程序,並且提供了清晰、易懂的示例代碼。與上一版相比,本書增加了Lambda表達式、流、Optional類、介面默認方法等各種特性,幫助讀者更加有效地使用Java編程語言及其基本類庫。 本書並非面向Java初學者,而是要求讀者有一定的Java編程經驗。對於在Java開發方面已經積累一定經驗的讀者而言,本書可以幫助其更深入地理解Java編程語言,以成為更卓越、高效的Java開發人員。作者簡介 約書亞·布洛克(Joshua Bloch),是卡耐基梅隆大學的教授。他曾經是Google公司的首席Java架構師、Sun公司的傑出工程師以及Transarc公司的高級系統設計師。Bloch曾帶領團隊設計並實現過無數的Java平台特性;包括JDK5 0語言增強版,並且Java集合框架上屢獲殊榮。他擁有卡耐基梅隆大學的計算機科學博士學位以及哥倫比亞大學的計算機科學學士學位。目錄 序言前言 第3版前言 第2版前言 第1版前言 致謝 第3版致謝 第2版致謝 第1版致謝 第1章 引言 第2章 創建和銷毀對象 條目1:用靜態工廠方法代替構造器 條目2:當構造器參數較多時考慮使用生成器 條目3:利用private構造器或枚舉類型實現單件 條目4:利用private構造器防止類被實例化 條目5:優先考慮通過依賴注入來連接資源 條目6:避免創建不必要的對象 條目7:清除過期的對象引用 條目8:避免使用終結方法和清理方法 條目9:與try-finally相比,首選try-with-resources 第3章 所有對象通用的方法 條目10:在重寫equals方法時要遵守通用約定 條目11:重寫equals方法時應該總是重寫hashCode方法 條目12:總是重寫toString方法 條目13:謹慎重寫clone方法 條目14:考慮實現Comparable介面 第4章 類和介面 條目15:最小化類和成員的可訪問性 條目16:在公開類中,使用訪問方法,而不使用public的欄位 條目17:使可變性最小化 條目18:組合優先於繼承 條目19:要麼為繼承而設計並提供文檔說明;要麼就禁止繼承 條目20:與抽象類相比,優先選擇介面 條目21:為傳諸後世而設計介面 條目22:介面僅用於定義類型 條目23:優先使用類層次結構而不是標記類 條目24:與非靜態成員類相比,優先選擇靜態成員類 條目25:限制在一個源文件中放一個頂層類 第5章 泛型 條目26:不要使用原始類型 條目27:消除unchecked類型的警告 條目28:列表優先於數組 條目29:首選泛型類型 條目30:首選泛型方法 條目31:使用有限制的通配符增加API的靈活性 條目32:謹慎混用泛型和可變參數 條目33:考慮類型安全的異構容器 第6章 枚舉和註解 條目34:使用enum代替int常量 條目35:使用實例欄位代替序號 條目36:使用EnumSet代替位域 條目37:不要以序號作為索引,使用EnumMap代替 條目38:使用介面模擬可擴展的枚舉 條目39:與命名模式相比首選註解 條目40:始終使用Override註解 條目41:使用標記介面來定義類型 第7章 Lambda表達式和流 條目42:與匿名類相比,優先選擇Lambda表達式 條目43:與Lambda表達式相比,優先選擇方法引用 條目44:首選標準的函數式介面 條目45:審慎地使用流 條目46:在流中首選沒有副作用的函數 條目47:作為返回類型時,首選集合類而不是流 條目48:將流并行化時要謹慎 第8章 方法 條目49:檢查參數的有效性 條目50:必要時進行保護性拷貝 條目51:仔細設計方法簽名 條目52:謹慎使用重載 條目53:謹慎使用可變參數 條目54:返回空的集合或數組,而不是null 條目55:謹慎返回Optional 條目56:為所有導出的API元素編寫文檔註釋 第9章 通用編程 條目57:最小化局部變數的作用域 條目58:與傳統的for循環相比,首選for-each循環 條目59:了解並使用庫 條目60:如果需要精確的答案,避免使用float和double 條目61:首選基本類型,而不是其封裝類 條目62:如果其他類型更適合,就不要使用字元串 條目63:注意字元串連接操作的性能 條目64:通過介面來引用對象 條目65:與反射相比,首選介面 條目66:謹慎使用本地方法 條目67:謹慎進行優化 條目68:遵循普遍接受的命名慣例 第10章 異常 條目69:異常機制應該僅用於異常的情況 條目70:對於可恢復的條件,使用檢查型異常;對於編程錯誤,使用運行時異常 條目71:避免不必要地使用檢查型異常 條目72:優先使用標準異常 條目73:拋出適合於當前抽象的異常 條目74:將每個方法拋出的所有異常都寫在文檔中 條目75:將故障記錄信息包含在詳細信息中 條目76:努力保持故障的原子性 條目77:不要忽略異常 第11章 併發 條目78:同步對共享可變數據的訪問 條目79:避免過度同步 條目80:與線程相比,首選執行器、任務和流 條目81:與wait和notify相比,首選高級併發工具 條目82:將線程安全性寫在文檔中 條目83:謹慎使用惰性初始化 條目84:不要依賴線程調度器 第12章 序列化 條目85:優先選擇其他序列化替代方案 條目86:在實現Serializable介面時要特別謹慎 條目87:考慮使用自定義的序列化形式 條目88:防禦性地編寫readObject方法 條目89:對於實例受控的類,首選枚舉類型而不是readResolve 條目90:考慮使用序列化代理代替序列化實例 附錄 與第2版中條目的對應關係 參考文獻 詳細資料或其他書籍請至台灣高等教育出版社查詢,查後請於PChome商店街私訊告知ISBN或書號,我們即儘速上架。 |