单例模式的要点:
1、某个类只能有一个实例;
2、必须自行创建自己的唯一实例;
3、必须自行给所有其他对象提供这一实例。
饿汉式单例类
代码实例
public class EagerSingleton {
private static final EagerSingleton m_instance = new EagerSingleton();
/**
* 私有的默认构造函数
*/
private EagerSingleton(){}
/**
* 静态工厂方法
* @return
*/
public EagerSingleton getInstance()
{
return m_instance;
}
}
懒汉式单例类
代码实例
public class LazySingleton {
private static LazySingleton m_instance = null;
private LazySingleton(){}
synchronized public static LazySingleton getInstance()
{
if(m_instance == null)
{
m_instance = new LazySingleton();
}
return m_instance;
}
}
登记式单例类
代码实例
- import java.util.HashMap;
-
public class RegSingleton {
-
static private HashMap m_registry = new HashMap();
-
static
- {
-
RegSingleton x = new RegSingleton();
- m_registry.put(x.getClass(), x);
- }
-
protected RegSingleton(){}
-
static public RegSingleton getInstance(String name)
- {
-
if(name == null)
- {
-
name = "RegSingleton";
- }
-
if(m_registry.get(name) == null)
- {
-
try
- {
- m_registry.put(name, Class.forName(name).newInstance());
- }
-
catch(Exception e)
- {
-
System.out.println("ERRORS hanppened!!");
- }
- }
-
return (RegSingleton)m_registry.get(name);
- }
- }
分享到:
相关推荐
设计模式——单例 例子和一些ppt 看下没错的
NULL 博文链接:https://794950040.iteye.com/blog/2208104
C++设计模式——单例模式-附件资源
单例的5中实现及反射和反序列化破解单例。
今天给大家带来的是23种设计模式的第一种——单例模式。前天写的第一篇文章设计模式的七大原则,是我第一次写文章,目前看了浏览量,让我信心大增。文章有什么讲述方式不对的欢迎大家随时给我私信。24小时恭候!!...
对应博客讲解:http://blog.csdn.net/t1234xy4/article/details/52419546
单例模式源代码 博文链接:https://yangguangfu.iteye.com/blog/815944
单例模式设计。
1)程序功能:单例模式设计Memcache和Redis操作类,采用PHP编写。 2)程序详解地址:http://blog.csdn.net/clevercode/article/details/46410055。 3)原创作品,出自"CleverCode的博客",分类为《设计模式之PHP项目...
本篇文章主要介绍了android开发设计模式之——单例模式详解,具有一定的参考价值,有需要的可以了解一下。
NULL 博文链接:https://maidoudao.iteye.com/blog/1329564
单例模式的实现饿汉式懒汉式线程安全的懒汉式登记式单例模式的优缺点单例模式的优点单例模式的缺点 单例模式是23个模式中比较简单的模式,应用也非常广泛 什么是单例模式? 单例模式的定义: Ensure a class ...
我们经常遇到这样的场景,线程A和线程B对同一个对象执行操作,但是在A里面new了后,B里面不便取,使的A,B对象是同一个对象,我们就会使用单例模式了。在Android中我们常用于数据库操作,蓝牙命令控制,以及一些工具...
首先我介绍的是设计模式中比较简单的一个模式——单例模式(因为这里只牵涉到一个类) 二、单例模式的介绍 说到单例模式,大家第一反应应该是——什么是单例模式?,从“单例”字面意思上理解为——一个类只有...
最近在设计模式的一些内容,主要的参考书籍是《Head First 设计模式》,同时在学习过程中也查看了很多博客园中关于设计模式的...首先我介绍的是设计模式中比较简单的一个模式——单例模式(因为这里只牵涉到一个类)
单例模式大家并不陌生,也都知道它分为什么懒汉式、饿汉式之类的。但是你对单例模式的理解足够透彻吗?今天我带大家一起来看看我眼中的单例,可能会跟你的认识有所不同。很容易看出,上面这段代码在多线程的情况下是...