美文网首页
单例模式两种构造方法

单例模式两种构造方法

作者: shanyukang | 来源:发表于2016-11-10 22:40 被阅读16次

1:类加载时进行对象的实例化:

public class SingletonA {

//SingletonA的唯一实例

private static SingletonA instance = new SingletonA();

//将构造函数私有,防止外界构造SingletonA实例

private SingletonA() {

}

/**

* 获取SingletonA的实例

*/

public static SingletonA getInstance() {

return instance;

}

}

2:第一次访问时进行对象的实例化

public class SingletonB {

//SingletonB的唯一实例

private static SingletonB instance = null;

//将构造函数私有,防止外界构造SingletonB实例

private SingletonB() {

}

//获取SingletonB的唯一实例,用synchronized关键字保证某一时刻只有一个线程调用此方法。

public static synchronized SingletonB getInstance() {

//如果instance为空,便创建一个新的SingletonB实例,否则,返回已有的实例

if (instance == null) {

instance = new SingletonB();

}

return instance;

}

}

相关文章

  • 单例设计模式

    单例设计模式 单例设计模式的引出 当构造方法私有化时,无法从外部进行构造方法的调用。在保证所有方法都不修改的方法时...

  • 单例模式两种构造方法

    1:类加载时进行对象的实例化: public class SingletonA { //SingletonA的唯一...

  • 单例模式

    单例模式 单例模式几乎是最简单的模式了 私有化构造方法。 静态的Singleton singleton和getIn...

  • 设计模式-创建型-单例模式

    单例模式: 为什么使用单例模式?节约内存开销,提高效率(性能),提高资源使用率。单例模式的特点: 构造方法私有化定...

  • 设计模式面试

    1、单例模式单例模式是一种软件设计模式,单例对象的类只能允许一个实例存在。 将该类的构造方法定义为私有方法,这样其...

  • 单例模式

    一、单例模式的定义 单例模式:私有化单例类的构造方法并提供全局生成方法以返回该类的实例对象,以保证在全局范围内,该...

  • 设计模式之单例

    单例模式 一般私有化构造函数 通过一个静态方法来获取唯一单例对象 两个例子 静态内部类单例模式 枚举模式 懒汉模式...

  • 单例模式

    单例模式 单例模式的特点: 构造函数不对外开放,一般为Private 通过一个静态方法返回一个单例类对象 确保单例...

  • C++中线程安全的单例模式(2)

    简介 本文介绍单例模式实现的另外两种方法: 通过double check(借助std::atomic)实现单例模式...

  • 反射(三)

    反射(三) 反射还可能会破坏单例模式,单例模式的特征: 私有化构造方法 提供全局唯一的公有访问点 以懒汉模式为例,...

网友评论

      本文标题:单例模式两种构造方法

      本文链接:https://www.haomeiwen.com/subject/xxnxpttx.html