软件设计模式,又叫设计模式,是一套反复被使用,多数人知晓的,经过分类编目的,代码设计经验的编写;
目的:1、提高代码的可重用性;2、提高代码的可读性;3、提高代码的可靠性,可维护性
【创建要点】1.构造函数私有化;2.提供静态共有函数来创建实例,供外部调用
public class MySingleton(){
private static volatile LazySingleton instance=null; //保证 instance 在所有线程中同步
private LazySingleton(){} //private 避免类在外部被实例化
public static synchronized LazySingleton getInstance()
{
//getInstance 方法前加同步
if(instance==null)
{
instance=new LazySingleton();
}
return instance;
}
}
public class HungrySingleton
{
private static final HungrySingleton instance=new HungrySingleton();
private HungrySingleton(){}
public static HungrySingleton getInstance()
{
return instance;
}
}
注意:单线程中单例模式可能会失效,用DCL(Double Check Lock)创建
原文:https://www.cnblogs.com/monkay/p/11281945.html