单例模式的5种设计.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《单例模式的5种设计.docx》由会员分享,可在线阅读,更多相关《单例模式的5种设计.docx(1页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、设计模式(Design pattern),提供了在软件开发过程中面临的一些问题的最正确解决方案,是 Java开发者必修的一门课程。主要分创立型模式、结构型模式和行为型模式。其中接下来我 们要写的是单例模式,属于创立型模式。单例模式,顾名思义就是只有一个实例,并且她自己负责创立自己的对象,这个类提供了一 种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。下面我们来看下有 哪几种实现方式吧。核心代码:构造方法私有化,privateo1、懒汉式懒汉式,顾名思义就是实例在用到的时候才去创立,“比拟懒”,用的时候才去检查有没有实 例,如果有那么返回,没有那么新建。有线程平安和线程不平安两种
2、写法,区别就是synchronized 关键字。2、饿汉式饿汉式,从名字上也很好理解,就是“比拟勤”,实例在初始化的时候就已经建好了,不管 你有没有用到,都先建好了再说。好处是没有线程平安的问题,坏处是浪费内存空间。3、双检锁双检锁,又叫双重校验锁,综合了懒汉式和饿汉式两者的优缺点整合而成。看上面代码实现 中,特点是在synchronized关键字内外都加了一层if条件判断,这样既保证了线程平安, 又比直接上锁提高了执行效率,还节省了内存空间。4、静态内部类静态内部类的方式效果类似双检锁,但实现更简单。但这种方式只适用于静态域的情况,双 检锁方式可在实例域需要延迟初始化时使用。5、枚举枚举的方式是比拟少见的一种实现方式,但是看上面的代码实现,却更简洁清晰。并且她还 自动支持序列化机制,绝对防止屡次实例化。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模式 设计
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内