设计模式:对问题行之有效的解决方式,其实他是一种思想
单例设计模式:可以保证一个类在内存中的对象唯一性
必须对于多个程序使用同一个配置信息对象时,就需要保证该对象的唯一性
如何保证对象的唯一性?
1. 不允许其他程序使用new新建对象
2. 在该类创建一个本类实例
3. 对外提供一个方法让其他程序可以获取该对象
步骤:
1. 私有化该类构造函数(不能在其他类new该类对象)
2. 通过new在本类中创建一个实例
3. 定义一个公有方法,将创建的对象返回
单例设计模式-饿汉式:
class Single
{
private Single(){}
private static Single s = new Single();
public static Single getInstance()
{
return s;
}
public voidtestSingle()
{
System.out.println("This is test single instance mode...");
}
}
class SingleDemo
{
public static void main(String[] args)
{
Single ss = Single.getInstance();
ss.testSingle();
}
}
单例设计模式-懒汉式(单例设计模式的延迟加载模式)
class Single
{
private Single(){}
private static Single s = null;
public static Single getInstance()
{
if (s == null)
{
s = new Single();
}
return s;
}
public voidtestSingle()
{
System.out.println("This is test single instance mode...");
}
}
class SingleDemo
{
public static void main(String[] args)
{
Single ss = Single.getInstance();
ss.testSingle();
}
}
注意:实际开发中,常用的是饿汉式,因为懒汉式存在安全隐患,当使用多线程并发程序的时候,可能保证不了对象的唯一性
本文出自 “Keyman” 博客,请务必保留此出处http://keyman.blog.51cto.com/9807984/1676603
原文地址:http://keyman.blog.51cto.com/9807984/1676603