中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java 單例模式和工廠模式實例詳解

發布時間:2020-10-20 20:54:01 來源:腳本之家 閱讀:147 作者:wuxiao5570 欄目:編程語言

單例模式根據實例化對象時機的不同分為兩種:一種是餓漢式單例,一種是懶漢式單例

私有的構造方法

指向自己實例的私有靜態引用

以自己實例為返回值的靜態的公有的方法

餓漢式單例

  public class Singleton {
    private static Singleton singleton = new Singleton();
    private Singleton(){}
    public static Singleton getInstance(){
      return singleton;
    }
  }

懶漢式單例

  public class Singleton {
    private static Singleton singleton;
    private Singleton(){}
    public static synchronized Singleton getInstance(){
      if(singleton==null){
        singleton = new Singleton();
      }
      return singleton;
    }
  }

工廠方法模式代碼

 interface IProduct {
    public void productMethod();
  }
  class Product implements IProduct {
    public void productMethod() {
      System.out.println("產品");
    }
  }
  interface IFactory {
    public IProduct createProduct();
  }
  class Factory implements IFactory {
    public IProduct createProduct() {
      return new Product();
    }
  }
  public class Client {
    public static void main(String[] args) {
      IFactory factory = new Factory();
      IProduct prodect = factory.createProduct();
      prodect.productMethod();
    }
  }

抽象工廠模式代碼

  interface IProduct1 {
    public void show();
  }
  interface IProduct2 {
    public void show();
  }
  class Product1 implements IProduct1 {
    public void show() {
      System.out.println("這是1型產品");
    }
  }
  class Product2 implements IProduct2 {
    public void show() {
      System.out.println("這是2型產品");
    }
  }
  interface IFactory {
    public IProduct1 createProduct1();
    public IProduct2 createProduct2();
  }
  class Factory implements IFactory{
    public IProduct1 createProduct1() {
      return new Product1();
    }
    public IProduct2 createProduct2() {
      return new Product2();
    }
  }
  public class Client {
    public static void main(String[] args){
      IFactory factory = new Factory();
      factory.createProduct1().show();
      factory.createProduct2().show();
    }
  }

希望本文對各位朋友有所幫助

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

来宾市| 宁津县| 宜春市| 巴中市| 清镇市| 龙岩市| 阿拉尔市| 达州市| 鸡西市| 武乡县| 西乌| 景德镇市| 都兰县| 全椒县| 江孜县| 红安县| 临泽县| 龙江县| 随州市| 吉隆县| 玉门市| 河北区| 云林县| 班玛县| 商南县| 大兴区| 类乌齐县| 安泽县| 桦南县| 舟山市| 太湖县| 乌审旗| 黔南| 镇雄县| 蕲春县| 东乌珠穆沁旗| 比如县| 修文县| 松阳县| 清涧县| 丽水市|