为什么要用枚举实现Singleton

为什么要用枚举实现Singleton


慕少森
浏览 542回答 1
1回答

月关宝盒

单例模式实现方式有很多:在第一次使用的时候创建(构造函数中判断是否已经有实例存在),在类加载的时候用静态块儿创建(静态块初始化),在应用启动的时候创建。在单线程中,基本大同小异,保证类的实例在整个应用中只有一个,都是没问题的。但是在多线程环境下,什么时候创建这个实例是要考虑线程安全的。枚举类型最大的特点就是:构造函数是private修饰的,也就是不能对其进行new,对象的实例都是预定义的,也就是在类加载的时候都是定义好了的,不会给其它调用去创建实例的机会。结论是,可以模拟这个思路去创建单例,不一定非得用枚举,但是推荐用使用定义枚举的方式去实现单例模式
打开App,查看更多内容
随时随地看视频慕课网APP