单态设计模式(Singleton)的核心就是蒋磊的构造方法私有化,之后在类的内部产生实例化对象,并通过类的静态方法返回实例化对象的引用。\
如果现在不希望一个类产生多个对象的话,则必须使用单态设计模式,而且使用单态设计模式比较常见。因为在Java支持的类库大量采用了此种模式。
所谓单态就是在入口处(构造方法)限制了对象的实例化操作。
class Singleton{ private static Singleton instance = new Singleton() ; //在内部产生实例化的对象 private Singleton(){ //将构造方法进行了封装,私有化 } public static Singleton getInstance(){ //通过静态方法取得instance对象 return instance ; } public void print(){ System.out.println("Hello world!") ; } } public class SingletonDemo01{ public static void main (String [] args){ Singleton s1 = null ; //声明对象 Singleton s2 = null ; //声明对象 Singleton s3 = null ; //声明对象 s1 = Singleton.getInstance() ; //取得实例对象 s2 = Singleton.getInstance() ; //取得实例对象 s3 = Singleton.getInstance() ; //取得实例对象 s1.print() ; //调用方法 s2.print() ; //调用方法 s3.print() ; //调用方法 } }
好好理解内存分配。(示例:回收站的应用)