2018-04-27 读head first 设计模式有感——软件开发的一个不变真理:change

以前的项目对接的是腾讯,现在要接今日头条,再改下代码吧!

策略模式的特点:

  • 继承导致问题——子类行为和父类不同需要重载,子类不能有父类某行为,那继承就更有问题。
  • 抽象接口导致问题——实现类全部得实现接口——代码重用是空谈。
  • 那么如果是接口-》父类-》子类这样的结构呢?可行否?

策略模式将上述既不能用继承也不能用接口的行为剥离出来,放到新的接口-》实现类中,然后将接口作为原来父类的成员属性,同时声明使用该成员属性完成行为的方法,以及设置该成员属性的setter,getter确保动态设置行为。

新的接口-》实现类+setter 就可以使得父类对象具有变化的完全不同的行为。其中运用了多态。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
    Jenaral阅读 3,249评论 2 9
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,826评论 1 32
  • java继承 继承的概念 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。 继承就是子类继...
    863cda997e42阅读 833评论 0 1
  • 1 面向对象No6 面向对象 OO Object Oriented 编程时以对象为单元,封装数据和逻辑,以此提...
    征程_Journey阅读 1,299评论 0 2
  • 一: 上月跟女友到香港玩,因为时间有限,我们分头行事,她去尖沙咀的广东道买香奈儿包包。而我则拖着皮箱奔向湾仔会展中...
    jackeystyle阅读 238评论 0 1

友情链接更多精彩内容