黑马程序员-面向对象-06天-5(单例设计模式)

package java06;

/*
 * 设计模式:解决某一类问题最行之有效的方法。
 * java中23种设计模式:
 * 单例设计模式:解决一个类在内存只存在一个对象。
 * 想要保证对象唯一。
 * 1,为了避免其他程序过多建立该类对象。先禁止其他程序建立该类对象
 * 2,还为了让其他程序可以访问到该类对象,只好在本类中,自定义一个对象。
 * 3,为了方便其他程序对自定义对象的访问,可以对外提供一些访问方式。
 * 这三部怎么用代码体现呢?
 * 1,将构造函数私有化。
 * 2,在类中创建一个本类对象。
 * 3,提供一个方法可以获取到该对象。
 */
class Single {
    public static Single single = null;

    private Single() {
    }

    public static Single getSingle() {
        if (single == null) {
            single = new Single();
        }
        return single;
    }
}

public class SingleDemo {
    public static void main(String[] args) {
        Single s1 = Single.getSingle();
        Single s2 = Single.getSingle();
        System.out.println(s1 == s2);//true
        Student p1 = new Student();
        Student p2 = new Student();
        System.out.println(p1 == p2);//false
    }
}
class Student{
      
}

 

posted @ 2013-03-27 17:24  谷文仁  阅读(125)  评论(0编辑  收藏  举报