为什么不推荐使用继承?
虽然继承可以解决代码复用问题,但继承层次过深、过复杂,也会影响到代码的可维护性。
组合相比继承的优势
如果继承出现了以上问题,我们可以利用组合、接口、委托三个技术手段来解决该问题。
组合和继承的选择
如果继承结构稳定(不轻易改变),且层次比较浅(比如,最多有两层继承关系),关系不复杂,就可以使用继承。反之,建议使用组合来替代继承。
虽然继承可以解决代码复用问题,但继承层次过深、过复杂,也会影响到代码的可维护性。
如果继承出现了以上问题,我们可以利用组合、接口、委托三个技术手段来解决该问题。
如果继承结构稳定(不轻易改变),且层次比较浅(比如,最多有两层继承关系),关系不复杂,就可以使用继承。反之,建议使用组合来替代继承。
本文标题:面向对象:多用组合少用继承
本文链接:https://www.haomeiwen.com/subject/djuxdrtx.html
网友评论