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、如何选择?
单例对象占用资源少,不需要延时加载:枚举式 好于 饿汉式单例对象占用资源大,需要延时加载:
静态内部类式 好于 懒汉式
以上为个人理解,有不正确的地方欢迎大家指教
-
08.17
乱涂彩世界狄安娜培养攻略
-
08.17
《交错战线》利兹抽取建议
-
08.17
Chinese Wuxia Comedy Duel Script
-
08.17
Beastman Dragon Action Scene
-
08.17
Anime Noble Mansion Drama Template
-
08.17
Xianxia Polite Response Comedy
推荐专题
热门阅读
-
-
下载
- |
-
-
下载
- 《行尸走肉第一章》免安装中文汉化硬盘版下载
- 单机|436 MB
- 一款以动作冒险为主题的游戏
-
-
下载
- 《街头霸王X铁拳》免安装中文汉化硬盘版下载
- 单机|111MB
- 一款非常好玩的格斗游戏
-
-
下载
- |
-
-
下载
- 《暗黑破坏神3》免安装繁体中文正式版下载
- 单机|7630 MB
- 一款以角色扮演为主题的游戏
-
-
下载
- 《马克思佩恩3》免安装硬盘版下载
- 单机|27033 MB
- 一款以第三人称射击为主题的游戏