码迷,mamicode.com
首页 > 其他好文 > 详细

单子模式

时间:2014-12-28 19:31:53      阅读:109      评论:0      收藏:0      [点我收藏+]

标签:

所谓类的单态设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法。如果我们要让类在一个虚拟机中只能产生一个对象,我们首先必须将类的构造方法的访问权限设置为private,这样,就不能用new 操作符在类的外部产生类的对象了,但在类内部仍可以产生该类的对象。因为在类的外部开始还无法得到类的对象,只能调用该类的某个静态方法以返回类内部创建的对象,静态方法只能访问类中的静态成员变量,所以,指向类内部产生的该类对象的变量也必须定义成静态的。

public class Single {

    //1.在类的外部不能通过new的方式创建实例,所以要私有化构造器
    private Single(){}
    //2.因为不能在外部创建实例,所以只能在类中创建实例
        //为了在外部可以直接使用该实例,用static修饰
    //3.不能在外部类中修改该属性,私有化该属性;
        //为了外部类访问该属性,提供公有的get方法
    private static Single instance=new Single();
    
    public static Single getInstance() {
        return instance;
    }
    
}
public class TestSingle {

    public static void main(String[] args) {
        
        Single instance1=Single.getInstance();
        Single instance2=Single.getInstance();
        
        System.out.println(instance1==instance2);
    }
}

结果返回 true;

 

单子模式

标签:

原文地址:http://www.cnblogs.com/hwj-hwj/p/4190245.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!