标签:
转自:xingoo
单例模式:
保证类仅有一个实例,并且可以供全局使用。这个类自己创建对象,并且提供对外公开的调用方法。(构造方法私有)
使用场景:
当类只有一个实例,并且可以从一个固定的访问点访问它时。
代码展示:
【饿汉模式】
public class Singleton { private static final Singleton singleton = new Singleton(); //此处为final变量 不可以修改 private Singleton(){ /** * 构造方法私有化 */ } /* * 返回实例,方法为static */ public static Singleton getInstance(){ return singleton; } }
【懒汉模式】
public class Singleton2 { private static Singleton2 singleton = null; private Singleton2(){ /** * 构造方法私有化 */ } /* * 同步方法synchronized ,当需要实例的时候采取创建, 返回实例,方法为static */ public static synchronized Singleton2 getInstance(){ if(singleton==null){ singleton = new Singleton2(); } return singleton; } }
标签:
原文地址:http://www.cnblogs.com/doudingbest/p/4957264.html