软件体系结构--单例模式
2014-05-28 10:07
120 查看
解决问题类型
一个类要求仅有一个唯一的实例,并且提供一个全局的访问点解决设计思路
将构造方法声明为private类型,如果构造方法为public类型,则可以永远使用该构造方法创建不同的对象在类中提供一个可以获得实例的方法,该方法必须是静态方法,否则无法调用,同时确保无论调用该方法多少次,始终返回同一个对象
具体待解决的问题UML设计
创建一个校长类对象,并保证仅有一个校长类President被创建UML设计
核心代码
public class President { private static President instance= null; String name = null; private President(String name){ this.name = name; } public static President getInstance(String name){ if(instance == null && !name.equals(null)){ instance = new President(name); JOptionPane.showMessageDialog(null, "创建现任校长成功!现任校长为"+instance.name); return instance; } else{ JOptionPane.showMessageDialog(null, "您已经创建了现任校长,不能再创建第二次!现任校长为"+instance.name); return instance; } } }
模式的优点
1.严格控制客户程序访问其唯一的实例2.单例类可以带有一些子类,每个子类都是单例类
3.比较容易地改变为允许创建一定数目对象的类
模式的不足
不适用于变化的对象,同一类型的对象在不同的场景需要变化时,单例模式不适用相关文章推荐
- 章二 软件体系结构的构建模式(3)
- java软件体系结构设计模式----适配器
- 对软件体系结构和模式的初步认识
- 章二 软件体系结构的构建模式(1)
- [笔记]软件体系结构(1)--模式初印象
- 软件体系结构--组合模式
- 软件体系结构(构架)、框架、设计模式之间的关系
- 软件体系结构--工厂模式
- [笔记]软件体系结构(1)--模式初印象
- java软件体系结构模式---集合模式
- java软件体系结构设计模式----虚代理
- java软件体系结构设计模式----外观
- 软件体系结构——工厂模式
- 软件体系结构作业一--单例模式
- java软件体系结构设计模式----装饰者
- java软件体系结构设计模式----rmi远程代理
- java软件体系结构设计模式------责任链
- 『常识』软件体系结构-构架、架构、框架、设计模式 软件体系结构-构架、架构、框架、设计模式
- 章二 软件体系结构的构建模式(2)
- 关于软件体系结构设计模式的总结