java设计模式连载(5) --单态模式

来源:互联网 发布:新手淘宝开店教程 编辑:程序博客网 时间:2024/06/16 15:04

 java设计模式连载(5) --单态模式

 

名称:Singleton

 

意图:

保证一个类仅有一个实例,并提供一个访问它的全局访问点。

 

适用性:

  • 当类只能有一个实例而且客户可以从一个众所周知的访问点访问它时。
  • 当这个唯一实例应该是通过子类化可扩展的,并且客户应该无需更改代码就能使用一个扩展的实例时。

     

     

    实例:

     1. 构造一个单例  King

     

    package Singleton;public class King {private  static King king;    private  King(){                 }          public  static  King getInstance() {        if (king == null){            king = new  King();        }             return king;    }}


    2.  测试类

      

    package Singleton;public class Test{public static void main(String[] args){     King k1 = King.getInstance();           King k2 = King.getInstance();                            System.out.println(k1);        System.out.println(k2);                System.out.println("是否相同:"+(k1==k2));        System.out.println("是否相同:"+(k1.equals(k2))); }}