永发信息网

为什么java中用枚举实现单例模式会更好

答案:2  悬赏:0  手机版
解决时间 2021-03-19 02:20
  • 提问者网友:愿为果
  • 2021-03-18 02:50
为什么java中用枚举实现单例模式会更好
最佳答案
  • 五星知识达人网友:孤独入客枕
  • 2021-03-18 03:14
单例模式实现方式有很多:在第一次使用的时候创建(构造函数中判断是否已经有实例存在),在类加载的时候用静态块儿创建(静态块初始化),在应用启动的时候创建。
 
在单线程中,基本大同小异,保证类的实例在整个应用中只有一个,都是没问题的。
但是在多线程环境下,什么时候创建这个实例是要考虑线程安全的。
 
枚举类型最大的特点就是:构造函数是private修饰的,也就是不能对其进行new,对象的实例都是预定义的,也就是在类加载的时候都是定义好了的,不会给其它调用去创建实例的机会。
结论是,可以模拟这个思路去创建单例,不一定非得用枚举,但是推荐用使用定义枚举的方式去实现单例模式
全部回答
  • 1楼网友:逃夭
  • 2021-03-18 03:20
枚举本身就是单例模式。 避免了反射和反序列化的漏洞。 调用的效率比较高,线程安全,实现简单。 唯一的缺点是没有实现延时加载。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯