大家好,欢迎来到IT知识分享网。
视频加载中…
1.1. 单例设计模式的实现
1.1.1. 单例代码实现
需求:使用Java代码描述太阳,要求最多只能创建一个对象;
/
* Sun
* 表示太阳的类
* @author 快学大数据
* 2018年6月15日 下午3:10:33
*/
public class Sun {
/*
* 思考:这个类,要求最多只能创建一个对象;
* 分析对象创建过程,发现,创建一个对象,需要使用new关键字和构造函数,
* 所以应该从new关键字和构造函数这两者上想办法;
* new关键字,是Java内置的一个关键字,程序员不能控制,所以只能控制构造函数,
* 不让其他地方随意使用;
* 使用private关键字修饰构造函数,这个类之外的地方就自然不能使用;
*/
private Sun() {}
/*
* 思考:单例不是没有对象,而是最多创建一个对象,就是还需要创建一个对象出来;
* 因为构造函数私有了,外界都不能使用,所以这个对象应该在这个类里面创建;
* 创建好的对象,需要使用一个成员变量保存;
* 保存这个唯一对象的成员变量,需要是静态的,而且为了安全,应该私有化。
*/
private static Sun ss = new Sun();
/*
* 因为保存 这个对象的变量被封装了,外界不能访问到,
* 所以应该提供一个公开的get方法,供外界使用;
* 又因为外界在调用这个方法获取sun对象之前,没有Sun的对象,
* 所以不能通过对象调用这个方法,所以这个方法应该用static修饰
*/
public static Sun getSun() {
return ss;
}
}
1.1.2. 单例实现步骤
要实现一个单例类,需要经过三个步骤:
1、私有化构造函数,目的是避免其它类可以创建这个类的对象;
2、在本类中创建唯一实例对象(因为构造函数私有化了,所以单例类的唯一实例对象只能在单例类里面创建;),使用一个私有静态的成员变量保存
3、对外提供一个公开的静态的函数供别人获取这个唯一实例对象

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/179486.html