
本教程操作环境:windows7系统、java10版,DELL G3电脑。
很多人说枚举类是实现单例的最好方法,因为枚举类单件是线程安全的,也是唯一不能破坏的单件模式实现。也就是说,不能通过反射来创建一个实例,这就保证了整个应用中只有一个实例,是一个非常硬核的单个实例。
1、实现步骤
(1)内部类使用枚举
(2)在枚举类的构造器里初始化
(3)对外部提供的获取单例的方法
(4)获取单例对象,返回并测试
2、实例
publicclassSingletonObj{
//内部类使用枚举
privateenumSingletonEnum{
INSTANCE;
privateSingletonObjsingletonObj;
//在枚举类的构造器里初始化singletonObj
SingletonEnum(){
singletonObj=newSingletonObj();
}
privateSingletonObjgetSingletonObj(){
returnsingletonObj;
}
}
//对外部提供的获取单例的方法
publicstaticSingletonObjgetInstance(){
//获取单例对象,返回
returnSingletonEnum.INSTANCE.getSingletonObj();
}
//测试
publicstaticvoidmain(String[]args){
SingletonObja=SingletonObj.getInstance();
SingletonObjb=SingletonObj.getInstance();
System.out.println(a==b);//true
}
}原文来自:https://www.py.cn © 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END


















































暂无评论内容