继承 作为三大特性之一,近来却越来越不推荐使用,更有极端的语言,直接语法中就不支持继承,例如 Go。我们将“鸟类”定义为一个抽象类 大部分鸟都会飞,那我们可不可以在 答案是否定的。尽管大部分鸟都会飞,但也有特例,比如鸵鸟就不会飞。鸵鸟继承具有 解决方案一在鸵鸟这个子类中重写这种设计思路虽然可以解决问题,但不够优美。对于这些不会飞的鸟来说,我们都需要重写 这违背了迪米特法则,暴露不该暴露的接口给外部,增加了类使用过程中被误用的概率。解决方案二通过 此时,继承关系变成了三层,还行得通。如果再有其他行为加入,抽象类的数量就会几何级数增长。
暂无评论