隨筆 - 40, 文章 - 0, 評論 - 20, 引用 - 0
          數(shù)據(jù)加載中……

          23種面向?qū)ο蟮脑O(shè)計模式----Singleton模式

            Singleton模式為單態(tài)模式或者叫孤子模式,保證一個類只有一個實例,并提供一個訪問它的全局訪問點。
            Singleton模式的使用范圍比較廣泛,對于一些類來說,只有一個實例是很重要的。比如,你要論壇中

          的帖子計數(shù)器,每次瀏覽一次需要計數(shù),單態(tài)類能否保持住這個計數(shù),并且能synchronize的安全自動加

          1,如果你要把這個數(shù)字永久保存到數(shù)據(jù)庫,你可以在不修改單態(tài)接口的情況下方便的做到。
          下面是一個簡單的示例程序:
          package Singleton;
          public class TestSingleton { 
           private static TestSingleton  testSingleton = null;
           protected int  count = 0; 
           public static synchronized  TestSingleton getInstance(){
             if( testSingleton ==   null)
              testSingleton = new TestSingleton();
             return testSingleton;
           }
           public void addCount(){
            count ++;
           }
           public void showCount(){
            System.out.println("count :"+count);
           }  
          }
          我們還可以在這個基礎(chǔ)上做一個擴展,如從上面例子中的TestSingleton類擴展出多個子類,在

          getInstance方法中控制要使用的是哪個子類,具體實現(xiàn)代碼如下:

          -----TestSingleton.java
          package Singleton;
          public class TestSingleton { 
           private static TestSingleton  testSingleton = null;
           protected int  count = 0; 
           public static synchronized  TestSingleton getInstance(){
             if( testSingleton ==   null)
              testSingleton = new SubTestSingleton ();
             return testSingleton;
           }
           public void addCount(){
            count ++;
           }
           public void showCount(){
            System.out.println("TestSingleton count :"+count);
           }  
          }

          -----SubTestSingleton.java
          public class SubTestSingleton extends TestSingleton{
           public void showCount(){
            System.out.println("SubTestSingleton count :"+count);
           }
          }

          <以上為個人見解,歡迎大家評論!>

          posted on 2005-11-13 15:54 月亮 閱讀(666) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 淳化县| 临夏市| 樟树市| 邵阳县| 连江县| 丰原市| 沈丘县| 龙陵县| 樟树市| 平潭县| 鱼台县| 白朗县| 根河市| 广宁县| 张家界市| 双鸭山市| 七台河市| 东明县| 进贤县| 浦东新区| 杭锦后旗| 报价| 乌苏市| 江门市| 青阳县| 通化市| 塘沽区| 重庆市| 枞阳县| 绥德县| 土默特右旗| 临安市| 岳普湖县| 安丘市| 普安县| 陇川县| 唐山市| 北川| 台中市| 沧州市| 沁源县|