public class Test_DanLi {
public static void main(String[] args){
Moon m1 = Moon.getMoon();
Moon m2 = Moon.getMoon();
System.out.println(m1 == m2);
Sun s1 = Sun.getSun();
Sun s2 = Sun.getSun();
System.out.println(s1 == s2);
}
}
//单例模式 - 醉汉式
class Moon{
private Moon(){}
private static Moon m = new Moon();
public static Moon getMoon(){
return m;
}
}
//单例模式 - 懒汉式
class Sun{
private Sun(){}
private static Sun sun;
public synchronized static Sun getSun(){
if(sun == null){
sun = new Sun();
}
return sun;
}
}
Java 单例模式(2种)
最新推荐文章于 2023-11-30 18:05:22 发布