(1.10)--第5.5章-单件模式软件设计与体系结构.ppt
《(1.10)--第5.5章-单件模式软件设计与体系结构.ppt》由会员分享,可在线阅读,更多相关《(1.10)--第5.5章-单件模式软件设计与体系结构.ppt(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第5.5章 单件模式1单件模式用来创建只能有一个实例的对象有一些对象在一个系统中只需要一个线程池对象、网络连接池对象、注册表设置对象、日志对象、这些对象可以通过全局变量、程序员之间的约定做到全局变量:在程序开始时创建对象资源浪费单件模式:确保只有一个实例会被创建第5.5章 单件模式2new MyObject();public MyClass private MyClass()public MyClass public static MyClass getInstance()public MyClass private MyClass()public static MyClass getInst
2、ance()return new MyClass();创建对象(多次)创建对象(多次)合法的定义,但是含有私有的构造函数的类合法的定义,但是含有私有的构造函数的类不能被实例化不能被实例化使用类名调用静态方法:使用类名调用静态方法:MyClass.getInstance()使用类名调用静态方法得到使用类名调用静态方法得到MyClass的的一个一个实例:实例:MyClass.getInstance()第5.5章 单件模式3经典的单件模式的实现public class Singleton private static Singleton uniqueInstance;/其它变量及方法其它变量及方法
3、private Singleton()public static Singleton getInstance()if(null=uniqueInstance)uniqueInstance=new Singleton();return uniqueInstance;第5.5章 单件模式4经典的单件模式的实现第5.5章 单件模式5利用单件模式创造的类,在任何时刻都只有一个对象利用单件对象,可以确保程序中使用的全局资源只有一份(系统设置对象、数据库连接对象)实现方式:私有的构造函数实例是在getInstance()方法被调用时创建的(也可能是以前早就被创建出来的)延迟实例化6牛奶巧克力工厂第5.5章
4、 单件模式7使用单件模式设计牛奶巧克力工厂public class ChocolateBoiler private boolean empty;private boolean boiled;private static ChocolateBoiler uniqueInstance;private ChocolateBoiler()empty=true;boiled=false;public static ChocolateBoiler getInstance()if(null=uniqueInstance)uniqueInstance=new ChocolateBoiler();return
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 1.10 5.5 模式 软件设计 体系结构
限制150内