熊聪聪_20160718_Java单例模式

上传人:油条 文档编号:47729436 上传时间:2018-07-04 格式:PPTX 页数:12 大小:117.88KB
返回 下载 相关 举报
熊聪聪_20160718_Java单例模式_第1页
第1页 / 共12页
熊聪聪_20160718_Java单例模式_第2页
第2页 / 共12页
熊聪聪_20160718_Java单例模式_第3页
第3页 / 共12页
熊聪聪_20160718_Java单例模式_第4页
第4页 / 共12页
熊聪聪_20160718_Java单例模式_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《熊聪聪_20160718_Java单例模式》由会员分享,可在线阅读,更多相关《熊聪聪_20160718_Java单例模式(12页珍藏版)》请在金锄头文库上搜索。

1、Java设计设计 模式之单单例模式熊聪聪聪聪单例模式的特点单例模式有以下特点: 单例模类只能有一个实例。 单例类必须自己创建自己的唯一实例。 单例类必须给所有其他对象提供这一实例。单例模式的概念Java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍两种:饿汉式单例和懒汉式单例。public class EagerSingleton private static EagerSingleton instance =new EagerSingleton();private EagerSingleton() public static EagerSingleton getInst

2、ance() return instance; 饿汉式单例类上面的例子中,在这个类被加载时,静 态变量instance会被初始化,此时类的私有构 造器会被调用。这时候,单例类的唯一实例 就被创建出来了。饿汉式其实是一种比较形象的称谓。既 然饿,那么在创建对象实例的时候就比较着 急,饿了嘛,于是在装载类的时候就创建对 象实例。private static EagerSingleton instance = new EagerSingleton();饿汉式单例类的理解饿汉式是典型的空间换时间,当类 装载的时候就会创建类的实例,不管你 用不用,先创建出来,然后每次调用的 时候,就不需要再判断,节省了

3、运行时 间。public class LazySingleton private static LazySingleton instance = null; private LazySingleton()public static LazySingleton getInstance() if(instance = null) instance = new LazySingleton(); return instance; 懒汉式单例类懒汉式其实是一种比较形象的称谓。既 然懒,那么在创建对象实例的时候就不着 急。会一直等到马上要使用对象实例的时候 才会创建,懒人嘛,总是推脱不开的时候才 会真正去

4、执行工作,因此在装载对象的时候 不创建对象实例。private static LazySingleton instance = null;懒汉式单例类的理解懒汉式是典型的时间换空间,就是每 次获取实例都会进行判断,看是否需要 创建实例,浪费判断的时间。当然,如 果一直没有人使用的话,那就不会创建 实例,则节约内存空间。单例模式的应用在计算机系统中,对话框、打印机、显卡的驱动程序对象常被 设计成单例。例如:每台计算机可以有若干个打印机,但只能有一个做打印作业,以避免两个打印作业同时输出到打印机中。网站的计数器,一般也是采用单例模,否则难以实现同步Windows的Task Mangager(任务管理器)可就是一个很典型的单例模式,想想看,你能打开两个任务管理器吗?不信的话自己试试。感言今天很残酷,明天更残酷, 后天很美好,但是大部分人都死 明天晚上,看不见后天的太阳!结语谢谢观赏谢谢观赏

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号