@OverWrite BlogJava

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            128 隨筆 :: 0 文章 :: 29 評(píng)論 :: 0 Trackbacks
              需求:一方面要求某類(lèi)只能存在單一的對(duì)象實(shí)例(從概念上來(lái)說(shuō),就是一組靜態(tài)方法和字段),另一方面又要求該實(shí)例的使用與普通對(duì)象一樣,單例模式就是這兩個(gè)要求之間的平衡。
              單例模式通過(guò)使用私有構(gòu)造函數(shù)保證了一個(gè)類(lèi)只能存在一個(gè)實(shí)例,類(lèi)中的某個(gè)靜態(tài)方法用于返回類(lèi)的唯一實(shí)例。以下的Widget類(lèi)就是一個(gè)單例:
          public class Widget{
              
          private static Widget instance = new Widget();
              
          public static Widget getInstance(){
                 
          return instance;
              }

              
          private Widget(){}
              
          public int doSomething(){
                  
          // 
              }

          }
            Widget的構(gòu)造函數(shù)是私有的,這以為著只有靜態(tài)方法getInstance()能夠創(chuàng)建Widget對(duì)象。由于instance字段是靜態(tài)的,所以它被定義為唯一的實(shí)例。第一次調(diào)用getInstance()方法創(chuàng)建一個(gè)新的Widget對(duì)象實(shí)例,而后續(xù)所有的調(diào)用都將會(huì)返回這唯一的對(duì)象實(shí)例。
            單例模式可以去掉不必要的對(duì)象創(chuàng)建過(guò)程。
          posted on 2008-02-29 16:52 vesung 閱讀(356) 評(píng)論(1)  編輯  收藏 所屬分類(lèi): Java設(shè)計(jì)模式

          評(píng)論

          # re: 單例模式 2008-03-04 21:15 Wang
          Java的垃圾收集就是好啊。在C++里實(shí)現(xiàn)單件要考慮的太多了……  回復(fù)  更多評(píng)論
            

          主站蜘蛛池模板: 齐齐哈尔市| 行唐县| 白沙| 大荔县| 禹州市| 宕昌县| 五河县| 庆元县| 巴塘县| 马边| 宜君县| 囊谦县| 兰州市| 津市市| 巴塘县| 镶黄旗| 视频| 河池市| 伊金霍洛旗| 易门县| 彭泽县| 岐山县| 城市| 高尔夫| 凌海市| 舞钢市| 历史| 洪江市| 商洛市| 博客| 松桃| 彩票| 久治县| 新源县| 尚义县| 大名县| 长海县| 星座| 渭源县| 永兴县| 土默特左旗|