天天看点

java中的四种单例实现方式

    在java中,单例设计模式是非常常见的设计模式,对单例设计模式的概念,不做过多的介绍,下面将逐一介绍四种单例设计模式:

    1、第一种单例设计模式

    1.1 代码实现

    1.2 相关测试

    2、第二种单例

    2.1 代码实现

    2.2 相关测试

    3、内部类实现单例

    3.1 代码实现

    3.2 相关测试

    4、枚举实现单例

    4.1 代码实现

    4.2 相关测试

    5、四种单例效率测试

    6、总结

    第一种单例:不具备懒加载的功效;

    第二种单例:懒加载、如果分为线程安全和非线程安全两种,当使用线程安全同步时,会影响效率。

    第三种单例:懒加载、且适合多线程,效率很高;但是可以通过java反射来实例化多个实例,因此在一般情况下,该方式实现比较好;

    第四种单例:必须在jdk5.0以上才具备的,未实现懒加载,多线程友好,并且无法通过java反射来实例化多个实例。

    在一般情况下,建议使用第三种和第四种方式。