//单例设计模式,解决对象只能有唯一一个的问题;
public class Demo01 {
public static void main(String[] args) {
//模式1验证
TaiYang_1 s1 = TaiYang_1.getInstance();
TaiYang_1 s2 = TaiYang_1.getInstance();
System.out.println(s1==s2);//返回:true,说明s1和s2是指向同一个对象的,验证了对象的唯一性
//模式2验证
TaiYang_2 s3 = TaiYang_2.INSTANCE;
TaiYang_2 s4 = TaiYang_2.INSTANCE;
System.out.println(s3==s4);//返回:true,说明s3和s4是指向同一个对象,验证了对象的唯一性
}
}
//演示单例设计模式的两种定义方式
class TaiYang_1{
//自己new一个私有的该类对象,因为不让别人创建,故需要调用该类时,自己就创建好,使用静态
private static TaiYang_1 INSTANCE = new TaiYang_1();
//然后私有化构造方法
private TaiYang_1(){}
//提供获取该对象的方法,因为要返回静态的INSTANCE,故此方法定义为静态
public static TaiYang_1 getInstance(){
return INSTANCE;
}
}
class TaiYang_2{
//私有化构造方法
private TaiYang_2(){}
public static final TaiYang_2 INSTANCE = new TaiYang_2();
} |
|