常见的五种单例模式实现方式

来源:互联网 发布:js 乱码 编辑:程序博客网 时间:2024/05/22 05:14

1.饿汉式

-线程安全、调用效率高。但是,不能延时加载

2.懒汉式

-线程安全、调用效率不高。但是,可以延时加载

3.双重检测锁式

-由于JVM底层内部模型原因,偶尔会出问题,不建议使用

4.静态内部类式

-线程序安全,调用效率高。可以延时加载

5.枚举式

-线程安全,调用效率高,不能延时

如何选用?

-单例对象、占用 资源少,不需要延时加载(枚举式   优于 饿汉式)

-单例对象、占用 资源大,需要延时加载(静态内部类式 优于 懒汉式)