单例模式的两种实现方式
饿汉式
package com.ycy5;
public class SingleInstance {
public final static SingleInstance mySingleInstance = new SingleInstance();
private SingleInstance() {
}
public static SingleInstance getSingleInstance() {
return mySingleInstance;
}
}
package com.ycy5;
public class Test01 {
public static void main(String[] args) {
SingleInstance singleInstance1 = SingleInstance.getSingleInstance();
System.out.println(singleInstance1);
SingleInstance singleInstance2 = SingleInstance.getSingleInstance();
System.out.println(singleInstance2);
SingleInstance singleInstance3 = SingleInstance.getSingleInstance();
System.out.println(singleInstance3);
}
}
懒汉式
package com.ycy6;
public class SingleInstance {
private static SingleInstance mySingleInstance = null;;
private SingleInstance() {
}
public static SingleInstance getSingleInstance() {
if (mySingleInstance == null) {
mySingleInstance = new SingleInstance();
}
return mySingleInstance;
}
}
package com.ycy6;
public class Test01 {
public static void main(String[] args) {
SingleInstance singleInstance1 = SingleInstance.getSingleInstance();
System.out.println(singleInstance1);
SingleInstance singleInstance2 = SingleInstance.getSingleInstance();
System.out.println(singleInstance2);
SingleInstance singleInstance3 = SingleInstance.getSingleInstance();
System.out.println(singleInstance3);
}
}
总结
例如:以上就是今天要讲的内容,本文仅仅简单介绍了Java单例模式两种实现方式。