Effective Java 14-22
有些內容已經是老生長嘆,所以只是列舉一下,不再詳細說明十四:復合優于繼承(Think in java中有不少說明)
十五:要們專門為繼承而設計,并給出文檔說明,要么禁止繼承
十六:接口優于抽象類(參考一下GOF的設計模式)
十七:接口只是被定義類型,不要試圖使用常量接口
十八:優先考慮靜態成員類
說明:嵌套類有四種
靜態成員類?, 非靜態成員類,?? 匿名類,? 局部類? 除了第一種之外,其它三種都被稱為內部類
1,靜態成員類是一種最簡單的嵌套類,最好把它看成一個普通類,只是碰巧被聲明在另一個類內部而已,
它可以訪問外圍類的所有成員,包括那些生民為私有的成員。靜態成員類是外圍類的一個靜態成員,也遵守同樣的可訪問性規則,如果它被聲明為私有的,那么它只能在外圍類內部可以訪問。靜態成員類的一個用法是公有的輔助類。例如HashMap的? static class Entry
非靜態成員類和靜態成員類的區別主要是非靜態成員類需要一個外圍類實例的引用,如果你不需要訪問外圍類的實例的話,記得使用靜態成員類。
匿名類被使用的相對多一些,但是大量的使用匿名類會讓你的代碼比較亂,作過GUI開發的人多會有所感觸。并且記住,盡可能的讓你的匿名類短小。
局部類,局部類的使用是最少的,很少會使用到這個,如果用到記得使局部類盡可能的短小
對于C語言用戶的部分
十九:用類代替結構
二十:用類層次代替聯合
二十一:用類來代替enum,但是在jdk1.5的時候提供了enum的支持,有些東西不一樣了
二十二:用類和接口代替函數指針
posted on 2007-02-01 22:22 dreamstone 閱讀(1312) 評論(0) 編輯 收藏 所屬分類: jdk相關