静态内部类实现单例模式

Posted 杯酒故人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了静态内部类实现单例模式相关的知识,希望对你有一定的参考价值。

 1 package 设计模式.单例模式;
 2 
 3 /**
 4  * 内部类实现单例模式, 因为内部类SingletonHolder只有在getInstance()方法第一次调用的时候才会被加载(实现了lazy),
 5  * 而且其加载过程是线程安全的(实现线程安全)。 内部类加载的时候实例化一次instance。
 6  * 
 7  * @Date 2017-8-6下午9:04:04
 8  * 
 9  */
10 public class Singleton {
11     private static class SingletonHolder {
12         private static Singleton instance = new Singleton();
13     }
14 
15     private Singleton() {
16     }
17 
18     public static Singleton getInstance() {
19         return SingletonHolder.instance;
20     }
21 }

 

以上是关于静态内部类实现单例模式的主要内容,如果未能解决你的问题,请参考以下文章

单例模式之饿汉方式实现与静态内部类实现的区别

单例模式之静态内部类实现

静态内部类实现单例模式

java GOF23涉及模式-单例模式-静态内部类实现和枚举实现

java 内部静态类实现单例模式

2. 单例模式