呆呆向前沖的blog

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            78 隨筆 :: 43 文章 :: 5 評論 :: 74 Trackbacks

          第15條 :要么專門為繼承而設(shè)計(jì),并給出文檔說明,要么禁止繼承

               ? 為了允許繼承,一個(gè)類必須遵守如下約定:
               ? 構(gòu)造函數(shù)一定不能調(diào)用可被改寫的方法。       

          第16條:接口優(yōu)于抽象類

               ? 接口通常是定義具有多個(gè)實(shí)現(xiàn)的類型的最佳途徑。 
               ? 例外情形是當(dāng)演化的容易性被靈活性和功能更為重要的時(shí)候。這時(shí)應(yīng)該使用抽象類來定義類型。
               ? 如果導(dǎo)出了一個(gè)重要接口,應(yīng)該考慮同時(shí)提供一個(gè)骨架實(shí)現(xiàn)類(skeletal implementation class)
               ? 盡可能謹(jǐn)慎設(shè)計(jì)所有的公有接口,并編寫多個(gè)實(shí)現(xiàn)來測試它們。

          第17條:接口是用于定義類型的

               ? 接口應(yīng)該這是被用來定義類型的
               ? 常量接口模式是對接口的不良使用
                     如果需要導(dǎo)出常量,應(yīng)該使用類型安全枚舉類,如

                                      public class PhysicalConstants{

                                              private PhysicalConstants(){}//注意:構(gòu)造函數(shù)應(yīng)該是私有的,避免子類化
                                              public static final AVOCADROS_NUMBER = .....;//注意,常量類型應(yīng)該是static final的
                                        }
           第18條:優(yōu)先考慮靜態(tài)成員類

                ? 嵌套類有四種:靜態(tài)成員類,非靜態(tài)成員類,匿名類,局部類
                ? 非靜態(tài)成員類的一種通用用法:允許外部類的一個(gè)實(shí)例被看做另一個(gè)不相關(guān)的類的實(shí)例。
                   例如,諸如Set和List這樣的集合接口的實(shí)現(xiàn)往往使用非靜態(tài)成員類來實(shí)現(xiàn)他們的迭代器
                             public class MySet extends AbstractSet {
                                       public Iterator iterator(){
                                              return new MyIterator();
                                       } 
                                       public class MyIterator implements Iterator{
                                              ................
                                        }     
                             }
                ? 如果聲明的成員類不要求訪問外圍實(shí)例,那么使用static修飾符使它成為靜態(tài)成員類。
           

                  
           
             


           

               
           
                         

          posted on 2005-06-20 16:30 呆呆向前沖的blog 閱讀(174) 評論(0)  編輯  收藏 所屬分類: 工作:Java技術(shù)
          主站蜘蛛池模板: 阿合奇县| 仙游县| 涞源县| 平顺县| 桃江县| 江北区| 永新县| 阳新县| 莒南县| 扎赉特旗| 平陆县| 洪雅县| 云浮市| 蒙城县| 滦南县| 防城港市| 定安县| 南京市| 安龙县| 建阳市| 象州县| 阳城县| 高淳县| 桂林市| 安龙县| 河北省| 河曲县| 太和县| 崇义县| 五华县| 德格县| 延川县| 小金县| 顺义区| 通州区| 祁连县| 赞皇县| 习水县| 老河口市| 苍山县| 辽中县|