单例模式
Posted ..小树苗
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单例模式相关的知识,希望对你有一定的参考价值。
单例模式单例模式最优方案: 线程安全,并且效率高,代码如下:
public class Singleton {
//使用volatile保证了多线程访问时instance变量的可见性
private volatile static Singleton instance;
// 定义一个私有构造方法
private Singleton() {
}
public static Singleton getInstance() {
// 对象实例化时与否判断(不使用同步代码块,instance不等于null时,直接返回对象,提高运行效率)
if (instance == null) {
//同步代码块(对象未初始化时,使用同步代码块,保证多线程访问时对象在第一次创建后,不再重复被创建)
synchronized (Singleton.class) {
//未初始化,则初始instance变量
if (instance == null) {
instance = new Singleton();
}
}
}
return instance;
}
}
以上是关于单例模式的主要内容,如果未能解决你的问题,请参考以下文章