《Effective java 第二版 中文版》電子版
《Effective java 中文版 第2版》
圖書簡介:
本書的目標是幫助讀者最有效地使用Java™程式設計語言及其基本類庫:java.lang、java.util,某種程度上還包括
java.util.concurrent和java.io。本書也會不時地討論到其他的庫,但是沒有涉及圖形使用者介面程式設計、企業級API以及移動裝置相
關的類庫。
本書共包含78個條目,每個條目討論一條規則。這些規則反映了最有經驗的優秀程式設計師在實踐中常用的一些有益做法。這些條目以一種比較鬆散的方式組織成10
章,每一章都涉及軟體設計的一個主要方面。本書並不一定要按部就班地從頭讀到尾,因為每個條目都有一定程度的獨立性。這些條目相互之間交叉引用,因此你可
以很容易地在書中找到自己需要的課程。
目錄
譯者序
序
前言
致謝
第1章 引言
第2章 建立和銷燬物件
第1條:考慮用靜態工廠方法代替構造器
第2條:遇到多個構造器引數時要考慮用構建器
第3條:用私有構造器或者列舉型別強化Singleton屬性
第4條:透過私有構造器強化不可例項化的能力
第5條:避免建立不必要的物件
第6條:消除過期的物件引用
第7條:避免使用終結函式
第3章 對於所有物件都通用的方法
第8條:覆蓋equals時請遵守通用約定
第9條:覆蓋equals時總要覆蓋hashCode
第10條:始終要覆蓋toString
第11條:謹慎地覆蓋clone
第12條:考慮實現Comparable介面
第4章 類和介面
第13條:使類和成員的可訪問性最小化
第14條:在公有類中使用訪問方法而非公有域
第15條:使非可變性最小化
第16條:複合優先於繼承
第17條:要麼為繼承而設計,並提供文件說明,要麼就禁止繼承
第18條:介面優於抽象類
第19條:介面只用於定義型別
第20條:類層次優於標籤類
第21條:用函式物件表示策略
第22條:優先考慮靜態成員類
第5章 泛型
第23條:請不要在新程式碼中使用原生態型別
第24條:消除非受檢警告
第25條:列表優先於陣列
第26條:優先考慮泛型
第27條:優先考慮泛型方法
第28條:利用有限制萬用字元來提升API的靈活性
第29條:優先考慮型別安全的異構容器
第6章 列舉和註解
第30條:用enum代替int常量
第31條:用例項域代替序數
第32條:用EnumSet代替位域
第33條:用EnumMap代替序數索引
第34條:用介面模擬可伸縮的列舉
第35條:註解優先於命名模式
第36條:堅持使用Override註解
第37條:用標記介面定義型別
第7章 方法
第38條:檢查引數的有效性
第39條:必要時進行保護性複製
第40條:謹慎設計方法簽名
第41條:慎用過載
第42條:慎用可變引數(varargs)
第43條:返回零長度的陣列或者集合,而不是null
第44條:為所有匯出的API元素編寫文件註釋
第8章 通用程式設計
第45條:將區域性變數的作用域最小化
第46條:for-each迴圈優先於傳統的for迴圈
第47條:瞭解和使用類庫
第48條:如果需要精確的答案,請避免使用float和double
第49條:原語型別優先於裝箱的原語型別
第50條:如果其他型別更適合,則儘量避免使用字串
第51條:瞭解字串連線的效能
第52條:透過介面引用物件
第53條:介面優先於反射機制
第54條:謹慎地使用本地方法
第55條:謹慎地進行最佳化
第56條:遵守普遍接受的命名慣例
第9章 異常
第57條:只針對異常的條件才使用異常
第58條:對可恢復的條件使用受檢異常,對程式設計錯誤使用執行時異常
第59條:避免不必要地使用受檢的異常
第60條:儘量使用標準的異常
第61條:丟擲與抽象相對應的異常
第62條:每個方法丟擲的所有異常都要有文件
第63條:在細節訊息中包含失敗-捕獲資訊
第64條:努力使失敗保持原子性
第65條:不要忽略異常
第10章 併發
第66條:同步訪問共享的可變資料
第67條:避免過多同步
第68條:executor和task優先於執行緒
第69條:併發工具優先於wait和notify
第70條:執行緒安全性的文件化
第71條:慎用延遲初始化
第72條:不要依賴於執行緒排程器
第73條:避免使用執行緒組
第11章 序列化
第74條:謹慎地實現Serializable
第75條:考慮使用自定義的序列化形式
第76條:保護性地編寫readObject方法
第77條:對於例項控制,列舉型別優先於readResolve
第78條:考慮用序列化代理代替序列化例項
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16502878/viewspace-553474/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Effective Java Second Edition中文版已出版Java
- 《Effective Java 第二版》讀書筆記Java筆記
- Effective Java Second Edition中文版勘誤列表Java
- 開源!《Python 機器學習》第二版(附電子版 pdf)Python機器學習
- C++ Primer第五版中文版電子書pdf下載C++
- python電子版Python
- Java 版 電子招標採購系統Java
- Python 核心程式設計 第二版 中文版(PDF格式)Python程式設計
- 支援Java API Docs中文版JavaAPI
- 《Effective Python 第二版》第二條 遵循PEP8風格指南Python
- Java資源大全中文版Java
- Java 高效程式設計(Effective Java)中文第三版Java程式設計
- Jutoh 3.03.10中文版 電子書製作工具(序號產生器)
- Magento開發手冊中文版第二章
- 電池電量管理軟體:Batteries for mac中文版BATMac
- 《Java實用系統開發指南》電子收費版Java
- Java Persistence with Hibernate 第二版Java
- FTP工具中文版,FTP工具中文版下載FTP
- 好運電子書!《CSS設計指南(第3版)》購電子書抽獎送紙版CSS
- AlDente for Mac(mac電池最大充電限制工具)中文版Mac
- mac電腦版好用的影片格式轉換Permute 3 中文版Mac
- 求JAVA多執行緒技術的電子版書籍Java執行緒
- Java Persistence with Hibernate中文版Hibernate實戰第2版出版Java
- Java API Docs 1.6 中文版下載地址JavaAPI
- 我看 Enterprise Java with UML中文版Java
- mac電腦版好用的影片下載工具:PullTube 1.8.5.7中文版Mac
- 中文版ftp工具,盤點幾個中文版ftp工具FTP
- 誰有Concurrent Programming in Java這本書的電子版麼?Java
- Java Persistence with Hibernate中文版Hibernate實戰第2版勘誤Java
- 蘋果文件 中文版蘋果
- 中文版vnc客戶端,中文版vnc客戶端下載,中文版vnc客戶端如何使用?VNC客戶端
- vnc中文版工具 有哪些值得入手的vnc中文版工具VNC
- photoshop2022中文版怎麼改成英文版?ps中文版改成英文版教程
- 深入JAVA虛擬機器-第二版Java虛擬機
- windows 10如何更換中文版_windows10英文版怎麼改中文版Windows
- 誰有GOF的設計模式電子版。Go設計模式
- Effctive C++電子版出來了! (轉)C++
- SiteSucker Mac版(整站下載工具)中文版Mac