Java单例模式
java使用单例设计模式的方式有很多种,比如饿汉式,懒汉式,静态内部类式,双重检测锁式以及枚举方式,这里主要讲枚举式。

一、案例
1、新建一个接口类
/** * @author Gjing **/public interface MySingleton {void doSomething();}
2、新建枚举类,实现上面的接口
/** * @author Gjing **/public enumSingleton implements MySingleton{/** * 实例 */INSTANCE{@Overridepublic void doSomething() {System.out.println("执行方法。。。");}}}
3、测试
/** * @author Gjing **/public class Test {public static void main(String[] args) {Singleton.INSTANCE.doSomething();}}
以上为简单的使用枚举方式实现单例模式
二、扩展
1、枚举方式实现单例的好处
2、四种方式的比较
饿汉式: 懒汉式(单例对象延时加载): 静态内部类实现方式(也是一种懒加载方式): 双重检测锁式 枚举式(推荐):3、总结:
1. 饿汉式线程安全,调用效率高 ,但是不能延迟加载2. 懒汉式线程安全,调用效率不高,能延迟加载3. 双重检测锁式由于JVM底层内部模型原因,偶尔会出问题。不建议使用4. 静态内部类式线程安全,资源利用率高,可以延时加载5. 枚举单例线程安全,调用效率高,但是不能延迟加载
4、如何选择?
单例对象占用资源少,不需要延时加载:枚举式 好于 饿汉式单例对象占用资源大,需要延时加载:
静态内部类式 好于 懒汉式
以上为个人理解,有不正确的地方欢迎大家指教
-
07.06
今日份表情包累积 跳跳鱼抽象表情包上线
-
07.06
以撒的结合重生怎么联机-以撒的结合重生联机教程
-
07.06
明日之后 彩蛋恐怖箱活动
-
07.06
明日之后变装派对活动
-
07.06
时空猎人觉醒冰魄亚索技能全解
-
07.06
蔚蓝档案朱莉打工技能解析
推荐专题
热门阅读
-
-
-
- Java单例模式
- 07.05
-
-
- AI 工程开发的标准化指令模板
- 07.05
-
- 大型网站系统与Java中间件读书笔记上
- 07.05
-
-
下载
- 《神剑伏魔录》(神剑风云)游戏音乐合集
- 其他游戏|7.73 MB
- 一款非常好玩的武侠闯关游戏
-
-
下载
- 《行尸走肉第一章》免安装中文汉化硬盘版下载
- 单机|436 MB
- 一款以动作冒险为主题的游戏
-
-
下载
- 《街头霸王X铁拳》免安装中文汉化硬盘版下载
- 单机|111MB
- 一款非常好玩的格斗游戏
-
-
下载
- 《生化危机:浣熊市行动》免安装中文硬盘版下载
- 单机|6310 MB
- 一款以动作射击为主题的游戏
-
-
下载
- 《暗黑破坏神3》免安装繁体中文正式版下载
- 单机|7630 MB
- 一款以角色扮演为主题的游戏
-
-
下载
- 《马克思佩恩3》免安装硬盘版下载
- 单机|27033 MB
- 一款以第三人称射击为主题的游戏