
设计模式
「已注销」
这个作者很懒,什么都没留下…
展开
-
策略模式
策略模式定义算法族,分别封装起来,让它们之间可以替换。超类里放行为接口对象,在子类里具体设定行为对象。此模式让行为算法的变化独立于算法的使用者。更好的提现了多用组合,少用继承。2.1.模拟鸭子项目2.2.策略模式实现1.1.1. 超类1.1.2. 行为实现组定义不同的行为,实现FlyBe原创 2017-05-29 11:51:26 · 367 阅读 · 0 评论 -
装饰者模式(待记录)
对扩展开放,对修改关闭。利用继承设计子类的行为,是在编译时静态决定的,而且所有的子类都会继承到相同的行为。然而,如果能够利用组合的做法扩展对象的行为,就可以在运行时动态的进行扩展。java io类库都是用来包装inputstream的,重写它的read方法。装饰者和被装饰者需要有相同的类型,实现同一个接口,或继承统一抽象类。如果依赖继承,那么类的行为只能在编译时静态决定。换句话说,行为原创 2017-05-29 11:54:12 · 233 阅读 · 0 评论 -
命令模式
当需要把发出请求的对象和执行请求的对象解耦时,使用命令模式。某些应用需要我们将所有的动作记录在日志中,并能在系统死机之后,重新调用这些动作恢复到之前的状态。原创 2017-05-29 11:58:49 · 259 阅读 · 0 评论 -
适配器模式
1.对象适配器(使用组合)2.类适配器(使用继承)原创 2017-05-29 11:59:55 · 233 阅读 · 0 评论 -
工厂模式
(1)解决大量类的实例化问题,解耦。(2)静态工厂不需要使用对象的方式来调用,但是也不能通过继承来改变创建方法的行为。5.1.简单工厂其实不是一个设计模式,更像一种编程习惯5.2.工厂方法模式(依赖继承)5.3.抽象工厂模式(依赖组合)原创 2017-05-29 11:54:53 · 235 阅读 · 0 评论 -
观察者模式
(1)在对象之间定义一对多的依赖,这样一来,当一的对象改变状态,依赖他的对象都会收到通知,并自动更新。代表人物mvc。(2)观察者模式提供了一种对象设计,让主题和观察者之间松耦合。当两个对象之间松耦合时,它们依然可以交互,但是不太清楚彼此的细节。观察者模式,主题只知道观察者实现了某个接口(Observer接口),主题不需要知道观察者的具体类是谁,做了些什么或其他任何细节。3.1.主题(原创 2017-05-29 11:52:49 · 298 阅读 · 0 评论 -
设计模式基础
1. 概述设计模式是人们在面对同类型软件工程设计问题所总结出的一些有用经验。模式不是代码,而是某类问题的通用设计解决方案oo基础:抽象、封装,多态、继承oo原则:(1)封装变化(2)多用组合,少用继承(3)针对接口编程,不针对实现编程2. 策略模式定义算法族,分别封装起来,让它们之间可以替换。超类里放行为接口对象,在子类里具体设定行为对象。此模式让行为算法的变化独立于算法的使用原创 2017-05-28 22:51:24 · 220 阅读 · 0 评论 -
单例模式
1.非线程安全(效率最高)2.线程安全13.线程安全2原创 2017-05-29 11:57:45 · 303 阅读 · 0 评论