![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
kerer-sk
这个作者很懒,什么都没留下…
展开
-
设计模式(一)-策略模式
策略模式:定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。代码示例每种类型的鸭子具有不同属性行为,我们把每种类型行为定义为接口,然后每种行为具体的类型就是实现这些接口的具体类。鸭子父类使用每种行为的接口类型来接收具体的行为类,然后调用具体行为的方法。需要更改某个具体鸭子的行为时,只需要更改注入的相关具体行为实现类飞行行为/** * 鸭子飞的行为接原创 2017-07-05 11:08:36 · 235 阅读 · 0 评论 -
装饰者模式
装饰者模式:动态的将责任附加到对象上,若要扩展功能,装饰者提供了比继承更有弹性的替代方式。实际上装饰者模式就是将继承和组合结合在了一起。继承:通过继承子类可以拥有自己定义的方法的同时,还能使用父类方法。但继承不便于扩展父类方法的功能。 组合:是将一个对象传入另一个对象中,由另一个对象的方法调用该对象的方法,并扩展响应功能。与继承相比,组合关系的优势就在于不会破坏类的封装性,且具有较好的松耦合性,可原创 2017-09-04 23:59:30 · 276 阅读 · 0 评论 -
工厂模式
简单工厂模式class SimplePizzaFactory{ public Pizza createPizza() { return new Pizza(); }}这便是最简单的工厂模式,可以将这个返回对象的方法设置为static的,常称为静态工厂方法(通常都设置为静态的)。简单工厂模式实际上并不是真正意义上的工厂模式。真正的工厂模式通过原创 2017-09-06 23:13:26 · 203 阅读 · 0 评论 -
单例模式
作用:确保一个类只有一个实例对象。 实现方式有:饿汉模式、懒汉模式饿汉模式:加载类时就已经新建号对象了,这个对象就是全局唯一存在的对象,使用时只需要调用对应的方法将这个对象返回给使用者public class Singleton { private static Singleton singleton = new Singleton(); public static Sin原创 2017-09-02 21:15:48 · 185 阅读 · 0 评论 -
观察者模式
观察者模式是一个1对多的关系,也就是1个对象发生改变,其他多个依赖对象都会收到通知。具体例子,就像事件处理一样,一个按键或点击会触发好几条事务共同处理。观察者模式:1、主题接口(被观察者接口)interface Subject{ void registerObserver();// 注册观察者 void removeObserver();// 移出观察者 void notif原创 2017-09-02 22:55:21 · 206 阅读 · 0 评论