4.静态内部类模式
package java_227_GOF23设计模式_单例模式__双重检查锁式_静态内部类模式_枚举式_UML_类图_练习;
/**
-
静态内部类模式
-
一个好的单例模式需要以下特点:而静态内部类基本符合这些特点
-
1.线程的安全
-
2.调用效率要相对高
-
3.要有懒加载
*/
public class SingletonDemo04 {//SingletonDemo单例演示
//调用静态内部类
private static class SingletonClassInstance{//SingletonClassInstance单例类的实例
//定义对象 ;final最终的 ;(final这里可以不加上)
private static final SingletonDemo04 instance = new SingletonDemo04();//因外部无法实现修改;所以线程安全
}
//创建方法
public static SingletonDemo04 getInstance(){//getInstance获得实例
//调用这个静态方法 进行访问
return SingletonClassInstance.instance;}
//开始使用时并不会加载对象;只有在调用getInstance()时,通过SingletonClassInstance.instance才会加载静态内部类
//实现了延时加载//私有构造器
private SingletonDemo04(){}
}