<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    憨厚生

    ----Java's Slave----
    ***Java's Host***

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      165 隨筆 :: 17 文章 :: 90 評論 :: 0 Trackbacks

    java模式之單例模式:
    ????????? 單例模式確保一個類只有一個實例,自行提供這個實例并向整個系統提供這個實例。
    ?特點:
    ?????? 1,一個類只能有一個實例
    ?????? 2,自己創建這個實例
    ?????? 3,整個系統都要使用這個實例
    例: 在下面的對象圖中,有一個"單例對象",而"客戶甲"、"客戶乙" 和"客戶丙"

    是單例對象的三個客戶對象。可以看到,所有的客戶對象共享一個單例對象。而

    且從單例對象到自身的連接線可以看出,單例對象持有對自己的引用。
    fasdf

    Singleton模式主要作用是保證在Java應用程序中,一個類Class只有一個實例存

    在。在很多操作中,比如建立目錄 數據庫連接都需要這樣的單線程操作。
    一些資源管理器常常設計成單例模式。
    外部資源:譬如每臺計算機可以有若干個打印機,但只能有一個Printer

    Spooler,以避免兩個打印作業同時輸出到打印機中。每臺計算機可以有若干個通

    信端口,系統應當集中管理這些通信端口,以避免一個通信端口被兩個請求同時

    調用。
    內部資源,譬如,大多數的軟件都有一個(甚至多個)屬性文件存放系統配置。

    這樣的系統應當由一個對象來管理這些屬性文件。

    一個例子:Windows 回收站。
    在整個視窗系統中,回收站只能有一個實例,整個系統都使用這個惟一的實例,

    而且回收站自行提供自己的實例。因此,回收站是單例模式的應用。

    兩種形式:
    1,餓漢式單例類
    public class Singleton {

      private Singleton(){}

      //在自己內部定義自己一個實例,是不是很奇怪?
      //注意這是private 只供內部調用

      private static Singleton instance = new Singleton();

      //這里提供了一個供外部訪問本class的靜態方法,可以直接訪問  
      public static Singleton getInstance() {
        return instance;   
       }
    }

    2,懶漢式單例類

    public class Singleton {

      private static Singleton instance = null;

      public static synchronized Singleton getInstance() {

      //這個方法比上面有所改進,不用每次都進行生成對象,只是第一次   

     
      //使用時生成實例,提高了效率!
      if (instance==null)
        instance=new Singleton();
      return instance;   }

    }


    第二中形式是lazy initialization,也就是說第一次調用時初始Singleton,以后就不用再生成了。


    注意到lazy initialization形式中的synchronized,這個synchronized很重要,如果沒有synchronized,那么使用getInstance()是有可能得到多個Singleton實例。
    一般來說第一種比較安全。

    posted on 2007-01-15 16:16 二胡 閱讀(163) 評論(0)  編輯  收藏

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


    網站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    主站蜘蛛池模板: a级毛片免费在线观看| 在线亚洲v日韩v| 四虎成人精品永久免费AV| 国产亚洲精久久久久久无码| 日本一区二区三区在线视频观看免费| 国产精品视_精品国产免费 | 国产亚洲人成网站观看| 免费播放在线日本感人片| 亚洲av女电影网| 亚洲人成免费网站| 亚洲美国产亚洲AV| 午夜亚洲国产成人不卡在线| 一个人看的hd免费视频| 亚洲乱码中文字幕久久孕妇黑人 | 一区二区三区免费看| 国产成人精品曰本亚洲79ren| 免费在线黄色电影| 亚洲成综合人影院在院播放| 国内一级一级毛片a免费| 四虎影视久久久免费观看| 亚洲国产精品VA在线看黑人| 国产乱子精品免费视观看片| 亚洲AV综合色区无码一二三区| avtt亚洲天堂| 久久久久久国产精品免费免费男同 | 亚洲精品无码激情AV| 午夜网站在线观看免费完整高清观看| 亚洲黄色免费电影| 日韩特黄特色大片免费视频| 中文字幕视频免费在线观看| 亚洲欧洲日产国码二区首页| 亚洲Av无码乱码在线观看性色| 国产免费AV片在线观看| 亚洲综合色区中文字幕| 亚洲精品和日本精品| 四虎在线视频免费观看视频| 久久亚洲色WWW成人欧美| 国产亚洲精品a在线无码| 四虎成人免费影院网址| 日批视频网址免费观看| 亚洲精品免费网站|