黑马程序员技术交流社区
标题:
单例模式最核心的概念和实现
[打印本页]
作者:
Woo
时间:
2015-8-25 17:28
标题:
单例模式最核心的概念和实现
本帖最后由 Woo 于 2015-8-25 17:34 编辑
刚开始接触设计模式,对没有什么项目经验的我们来说确实有些陌生,不过设计模式的存在本来就是为了让问题简单化而不是复杂化的,所以不必畏惧。
单例模式的主要特征就是一个类只创建一个实例
要实现这个目的其实主要是两个方面
1.我在类里面来创建一个实例
2.除此之外,谁也别想在别的地方创建这个类的其他实例,只能取得我在类中创建的实例
要做到第一步:把构造函数私有化、并且在类中构造一个本类的实例
要做到第二步:在本类中创建一个能够让别人取得我实例的方法
public class Singleton {
private static final Singleton INSTANCE = new Singleton();
private Singleton() {}\\把构造函数私有化、并且在类中创建一个本类的实例
\\在本类中创建一个能够让别人取得我实例的方法
\\为什么要用static的方法:因为方法被调用只有两种①通过类名调用②通过对象名调用,这里并没有创建具体的对象,所以用类调用
public static Singleton getInstance() {
return INSTANCE;
}
}
复制代码
作者:
boboyuwu
时间:
2015-8-25 17:41
哈哈你这够彻底的哦 隐藏起来 还静态 还不准修改 只能创建这么一次了. 一般好像都不需要final除非你这个对象是真正只需要创建一次
作者:
Woo
时间:
2015-8-25 17:57
代码是参考wikipedia的Singleton中的Eager initialization,final这个关键字我确实还要再想一想
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2