设计模式学习笔记
来源:互联网 发布:深圳中原成交数据 编辑:程序博客网 时间:2024/04/29 05:36
1. 单例模式
限制只产生一个对象。 if (object == null) { object = new Object(); }
2. 简单工厂模式
通过一个工厂类根据条件来创建各种各样的类。
3. 工厂方法模式
对工厂类进行改造分解,工厂类升级为接口,一对一建立工厂类(针对要生产的类),实现工厂接口。
问题来了:简单工厂和工厂方法有什么优劣?
4. 迭代器模式
Iterator,具有遍历性质的模式。
5. 原型模式
创建多个相同内容的对象时需要一个原型版本,针对这个原本克隆出一些副本。调用obj.clone()。
6. 代理模式
代理类和主体类继承同一个类,以表示操作相同。代理类里面实例化主体类,并调用主体类的操作。本质是主体对客体进行操作,但不是直接,而是通过了代理。
7. 策略模式
多个策略(算法不同,目的一样)继承同一个抽象策略,放入一个中介类Context,只要调用中介类就可以判断调用的是哪个策略,从而很好地封装了算法。
8. 模板方法模式
子类继承抽象的父类,有权覆盖父类中可变部分(抽象方法、钩子方法),无权覆盖父类中不可变部分(具体方法)。
9. 观察者模式
通过一个观察者类,维护一个全是目标类的列表,并逐个传递消息给目标类。
10. 抽象工厂模式
原理和其他工厂模式类似,区别在于工厂类确定后不能扩展类,只能在类内增加方法,而产品类则可以无限制扩展并且与已存在的产品类无关。[反射的使用能让工厂模式更加灵活--替换switch或if的]
11. 状态模式
12. 适配器模式
13. 桥梁模式
两个聚合关系的对象,通过在一个对象里面传入另一个对象关联一起。
0 0
- 设计模式学习笔记
- 设计模式学习笔记
- 设计模式学习笔记
- 设计模式【学习笔记】
- 设计模式 学习笔记
- 设计模式学习笔记
- 设计模式学习笔记
- 设计模式学习笔记
- 设计模式学习笔记
- 设计模式学习笔记
- 设计模式学习笔记
- 设计模式学习笔记
- 设计模式学习笔记
- 设计模式学习笔记
- 设计模式学习笔记
- 设计模式学习笔记
- 设计模式学习笔记
- 设计模式学习笔记
- 中国天气网城市数据
- 大数据测试环境搭建
- android 程序异常捕捉处理
- Android 应用第一次运行时,引导页面的设置方法(只让程序Acitivity运行一次的设置方法)
- RelativeLayout 代码控制居中
- 设计模式学习笔记
- MySQL函数大全 及用法示例
- HDU 2100 Lovekey(26进制相加 数学啊)
- WebView中几行很厉害的代码
- zookeeper安装(windows)
- Linux命令学习:sort
- ural 1146 Maximum Sum 最大连续和
- 同步VS异步
- 大数加减乘除