【发布时间】:2021-11-06 01:24:12
【问题描述】:
好的,所以我知道修改的明显示例,即当我们需要修改现有行为以添加新行为时。但是,当我们只需要添加不改变任何内容而只是添加新功能的代码时,这算作修改还是扩展?
实例:
当我们有一个代表步行玩家行为的Walking 类并且我们想要添加一个Jumping 类,但需要在Walking 类中添加方法来创建这两种行为之间的转换(例如声明它将如何从Walking 变为Jumping)。
这算不算修改?我的意思是,我们在Walking 类中编写了代码,但是这些代码并没有改变它的任何现有行为(其他方法不需要修改)。或者这是一个扩展(那么,通过扩展,打开关闭原则不是指类class A extends B,而是我们在类中添加的任何功能)?
【问题讨论】:
标签: oop extends solid-principles open-closed-principle