首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
其他好文
> 详细
10、设计模式
时间:
2016-12-02 02:22:29
阅读:
113
评论:
0
收藏:
0
[点我收藏+]
标签:
效率
父类
事件处理
没有
方法
win
接口
系统
同步锁
一、单例设计模式
懒汉(线程安全问题)同步锁,每次判断锁,效率低,外层再加一个判断是否为空,效率高
1、私有化构造方法
2、声明引用类型变量,不要创建对象
3、声明静态方法获取本类对象,判断是否已经创建了本类的对象,如果已经创建了直接返回,没有则创建引用类型变量返回
二、装饰者设计模式
增强一个类的功能,还可以让这些类互相装饰
通过继承增强一个类的功能:
优点:代码结构清晰易懂
缺点:使用不灵活,会导致继承的体系过于庞大
步骤:
1、在装饰类内部维护一个被装饰类的引用
2、让装饰类有共同的父类或者父接口
父类有无参的构造方法时默认调用,要是没有无参的构造方法则需要指定有参构造方法
修饰模式实战增强类:
优点:内部可以通过多态对多个需要增强的类进行增强,让这些修饰类达到互相装饰的效果,使用灵活
缺点:需要内部通过多态维护需要被增强类的实力,使代码复杂
三、观察者设计模式
当一个对象发生指定动作时,通知另外一个对象做出相应的处理
发布 - 订阅、
模型
-
视图
、源
-
收听者
、从属者
将观察者和被观察的对象分离开、
一个目标物件管理所有相依于它的观察者物件,并且在它本身的状态改变时主动发出通知。
通常被用来实作事件处理系统,
Swing
大量使用观察者模式,许多
GUI
框架也是如此
int random = new Random().nextInt(1000); // 产生范围内的随机数
步骤:
1、当目前对象发生指定动作时,要通知另外的对象做相应的处理,把对方的相应处理方法定义在接口上
2、在当前对象中维护接口的引用,当当前对象发生指定动作时即可调用指定的方法
四、工厂设计模式
用于生产对象
该模式将创建对象的过程放在了一个静态方法中来实现 . 在实际编程中 ,如果需要大量的创建对象 , 该模式是比较理想的 .
可以用反射产生任意类型的对象
10、设计模式
标签:
效率
父类
事件处理
没有
方法
win
接口
系统
同步锁
原文地址:http://www.cnblogs.com/1989guojie/p/6123830.html
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
分布式事务
2021-07-29
OpenStack云平台命令行登录账户
2021-07-29
getLastRowNum()与getLastCellNum()/getPhysicalNumberOfRows()与getPhysicalNumberOfCells()
2021-07-29
【K8s概念】CSI 卷克隆
2021-07-29
vue3.0使用ant-design-vue进行按需加载原来这么简单
2021-07-29
stack栈
2021-07-29
抽奖动画 - 大转盘抽奖
2021-07-29
PPT写作技巧
2021-07-29
003-核心技术-IO模型-NIO-基于NIO群聊示例
2021-07-29
Bootstrap组件2
2021-07-29
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!