隨筆-95  評(píng)論-31  文章-10  trackbacks-0
          經(jīng)常對(duì)那三種工廠模式濫用,卻有時(shí)候又忘了叫什么
          簡(jiǎn)單工廠 工廠方法 抽象方法模式。

          創(chuàng)建模式可分為:簡(jiǎn)單工廠 工廠方法 抽象方法模式  單例模式 多例模式 建造者模式 原型模式
          創(chuàng)建模式又分為:類的創(chuàng)建模式和對(duì)象的創(chuàng)建模式:即通過類繼承和對(duì)象委托方式

          三種工廠示意圖:

          原型模式滿足三點(diǎn):
          1,克隆對(duì)象與原有對(duì)象不同
          2,克隆對(duì)象與原有對(duì)象的getClass()方法相同,即需要相同的類型
          3,equals方法克隆對(duì)象與原有對(duì)象相同
          前兩條充要條件,第3條必要條件
          克隆分為:深克隆,淺克隆
          深克隆:復(fù)制基本變量以及引用所指向的堆對(duì)象
          淺克隆:只復(fù)制基本變量及引用,引用仍然指向同一個(gè)堆對(duì)象。
          深克隆要考慮:克隆的深度,即引用對(duì)象是否還包括引用。
          示意圖:

          單例模式:
          /**線程安全**/
          private static A a = new A();
          private A(){}
          public A getInstance(){
             
          return a;
          }

          /**非線程安全 可改造成線程安全*/
          private A a ;
          private A(){}
          public A getInstance(){
             
          if(a ==null){
                a 
          = new A();
          }
             
          return a; 
          }
          示意圖:
          主站蜘蛛池模板: 文昌市| 玉树县| 吴旗县| 金湖县| 清新县| 榆社县| 徐汇区| 攀枝花市| 承德市| 中牟县| 特克斯县| 年辖:市辖区| 龙门县| 陇川县| 安顺市| 富顺县| 嘉禾县| 万州区| 武宣县| 鱼台县| 丹东市| 北川| 竹山县| 奉贤区| 察哈| 崇州市| 维西| 枣庄市| 康定县| 淮安市| 和平县| 南开区| 成武县| 达日县| 怀化市| 南木林县| 吉安县| 江津市| 三台县| 永胜县| 石棉县|