单例设计模式的核心

单例模式,即一个类只有一个对象实例。

 

class Singleton{//没有明确定义构造方法。编译时也会默认存在一个构造方法

private static Singleton instance ;
private Singleton() {
//构造方法私有化
}
public void print() {
System.out.println("hello world");
}
public static Singleton getInstance() {
if(instance == null) {
instance = new Singleton();
}
return instance;
}
}
public class TestDemo03092 {
public static void main(String[] args) {
//s=new Singleton(); 构造方法私有化后无法实例化对象
Singleton s1 = Singleton.getInstance();
Singleton s2 = Singleton.getInstance();
Singleton s3 = Singleton.getInstance();

System.out.println(s1);
System.out.println(s2);
System.out.println(s2);//通过输出s1,s2,s3发现均是Singleton@9e89d68。表明指向同一处。


s1.print();
s2.print();

}
}
//控制一个类中的实例化对象的产生个数。所以要先锁定类的构造方法。

//若只要一个实例化对象,那么就可以在类的内部使用static方式来定义一个对象。

//这种就叫单例设计模式

//单例模式的作用确保所有对象都访问唯一实例

 

posted @ 2019-01-21 16:14  ABULLETWITH  阅读(456)  评论(0编辑  收藏  举报