摘要: 定义:定义一组算法,将每个算法封装起来,并且使他们之间可以互换。 策略模式使用的就是面向对象的继承和多态机制。 优点:1、算法可以自由切换 2、避免使用多重条件判断 3、扩展性良好 缺点:1、策略类数量增多 2、所有策略类都需要向外暴露 阅读全文
posted @ 2017-03-21 17:03 Forever-Road 阅读(144) 评论(0) 推荐(0)
摘要: 定义:定义一个操作中的算法的框架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 优点:1、封装不变部分(在父类实现),扩展可变部分(在子类实现) 2、提取公共部分代码,便于维护 3、行为由父类控制,子类实现 缺点:按照我们的设计习惯,抽象类负责声明最抽象 阅读全文
posted @ 2017-03-21 15:47 Forever-Road 阅读(158) 评论(0) 推荐(0)