第10章面向对象原则解答.pptVIP

  • 5
  • 0
  • 约3.66千字
  • 约 39页
  • 2016-08-01 发布于湖北
  • 举报
第10章 设计原则 OOAD的基本原则 开闭原则 Liskov代换原则 依赖倒置原则 针对接口编程,而非(接口的)实现 接口分离原则 优先使用(对象)组合,而非(类)继承 1.开闭原则-OCP Open/Closed Principle(OCP) [ Software entities should be open for extension, but closed for modification] 一个模块在扩展性方面应该是开放的,在更改性面应该是封闭的。 这个原则是说,在写模块的时候应该尽量使得模块可以扩展,并且在扩展时不需要对模块的源代码进行修改。 由Bertrand Meyer 提出[Mey88] 开闭原则 例: HP类、Epson类、Canon类分别表示不同的打印机,Output类与3个类关联。运行时Output类根据当前与系统相连的哪种类型的打印机而分别使用不同类中的print()方法。 Output类中会有if…else或switch…case之类的分支结构来判断与系统相连的是哪种类型的打印机。 系统增加Legend打印机时,不仅要新增加Legend类,还要修改Output内部结构。 开闭原则 开闭原则 2.Liskov替换原则(LSP) LSP示例 LSP示例(续) LSP示例(续) 总结 为了保持LSP(并与开放-封闭法则一起),所有子类必须符合使用基

文档评论(0)

1亿VIP精品文档

相关文档