知识大全 23种设计模式的Java版--Singleton(单例)
Posted 知
篇首语:非淡泊无以明志,非宁静无以致远。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 23种设计模式的Java版--Singleton(单例)相关的知识,希望对你有一定的参考价值。
23种设计模式的Java版--Singleton(单例) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
所谓的单例模式是指单个实例 单即单个的意思 例乃实例的意思 就是一个类生成的对象 因此 单例模式的功能作用就是保证一个类只生成一个对象 是在代码级的实现 不是人工维护的
单例模式的实现需要以下两个步骤
单例类有一个存贮单例的私有属性
单例类的构造方法必须是私有的
单例类要有获取单例类实例的静态方法
单例类示例
饿汉式单例代码
package tao pattern singleton;
/**
* @author TaoistWar
*
*/
public class Singleton
// 单例类有一个存贮单例的私有属性
private static Singleton singleton = new Singleton();
// 单例类的构造方法必须是私有的
private Singleton()
// 单例类要有获取单例类实例的静态方法
public static Singleton getInstance()
return singleton;
懒汉式单例代码
package tao pattern singleton;
/**
*
* @author TaoistWar
*
*/
public class LazySingleton
// 单例类有一个存贮单例的私有属性
private static LazySingleton singleton;
// 单例类的构造方法必须是私有的
private LazySingleton()
// 单例类要有获取单例类实例的静态方法
public synchronized static LazySingleton getInstance()
if (singleton == null)
singleton = new LazySingleton();
return singleton;
比较
饿汉式单例 加载时生成单例 获取单例时不需要考虑多线程
懒汉式单例 调用时生成单例 获取单例时如果多线程需要加synchronized锁定方法以保证单例
结论
cha138/Article/program/Java/gj/201311/27268相关参考
在Java中应用设计模式之Singleton 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 基本
Java开发中的23种设计模式 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  
关于Java23种设计模式的有趣见解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 创建型模式
关于Java23种设计模式的有趣见解[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 装饰模
关于Java23种设计模式的有趣见解[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 创建型
关于Java23种设计模式的有趣见解[3] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! MED
经典:从追MM谈Java的23种设计模式[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 桥
经典:从追MM谈Java的23种设计模式[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 设
经典:从追MM谈Java的23种设计模式[3] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! I
C#“Singleton”模式四种实现方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 大家一