一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - java 單例模式和工廠模式實例詳解

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

2020-09-10 14:22wuxiao5570 Java教程

這篇文章主要介紹了Java設計模式編程中的單例模式和簡單工廠模式以及實例,使用設計模式編寫代碼有利于團隊協作時程序的維護,需要的朋友可以參考下

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

私有的構造方法

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

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

餓漢式單例

java" id="highlighter_689713">
?
1
2
3
4
5
6
7
public class Singleton {
  private static Singleton singleton = new Singleton();
  private Singleton(){}
  public static Singleton getInstance(){
    return singleton;
  }
}

懶漢式單例

?
1
2
3
4
5
6
7
8
9
10
public class Singleton {
  private static Singleton singleton;
  private Singleton(){}
  public static synchronized Singleton getInstance(){
    if(singleton==null){
      singleton = new Singleton();
    }
    return singleton;
  }
}<br>

工廠方法模式代碼

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
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();
   }
 }

抽象工廠模式代碼

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
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();
  }
}

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

原文鏈接:http://blog.csdn.net/wuxiao5570/article/details/70154159

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 狠狠撸在线影院 | 韩国最新理论片奇忧影院 | 日本一区二区免费在线观看 | 日韩一区二区三区免费 | 国产91网站在线观看 | 国产精品色拉拉免费看 | 丝瓜视频在线观看污 | 朝鲜女人free性hu | 高清黄色直接看 | 久青草国产在线观看视频 | 国内会所按摩推拿国产 | 免费草比视频 | 欧美性4khd720 | 521色香蕉网在线观看免费 | 国产成人精品免费大全 | 色综合亚洲天天综合网站 | tobu8中国在线播放免费 | 99热这里只精品99re66 | 亚洲国产成人久久99精品 | 91精品免费国产高清在线 | 香蕉人人超人人超碰超国产 | 男女18一级大黄毛片免 | 精品在线免费观看 | 国产福利不卡 | 成人福利影院 | 久热这里在线精品 | 99精品热视频 | 国产日韩综合 | 欧美日韩亚洲国内综合网香蕉 | 欧美日韩国产在线人成 | 第四色男人天堂 | www久久| 亚拍一区| 我被黑人彻底征服的全文 | tk白丝丨vk | 国产欧美va欧美va香蕉在线观 | 精品国产免费第一区二区三区日韩 | 欧美二区视频 | 精品国产乱码久久久久久免费流畅 | 手机跑分排行最新排名 | 青青草99热久久 |