写点什么

解决 java 多继承问题

作者:Java-fenn
  • 2022 年 9 月 14 日
    湖南
  • 本文字数:335 字

    阅读完需:约 1 分钟

java 中的接口之间可以多继承,也可以多实现。

但是 java 中的类只能实现单继承,但可以多实现。

为了完全理解如何解决 Java 的多重继承问题,有一个经典的问题需要描述如下:

有类动物,它有子类鸟和马,现在需要制作一个从飞鸟和马延伸的类 Pegasus,因为飞马座既是鸟又是马。

解决这个问题的经典方法是制作 Animal,Bird 和 Horse 类接口并从中实现 Pegasus。

现在,换种方式:

为动物类创建接口,例如用于马的公共接口 Equidae 和用于鸟类的公共接口 Avialae



另一种方式:

为了减少重复代码,也可以创建一个抽象类,其中包含需要实现的动物的大多数常用代码。



总结:我建议绕过接口的“多继承”问题,不建议使用代表已经具体类型的接口(如 Bird)。使用接口构造继承层次结构,在有用时使用抽象类,在需要时实现具体类,并在适当时使用委托。

用户头像

Java-fenn

关注

需要Java资料或者咨询可加我v : Jimbye 2022.08.16 加入

还未添加个人简介

评论

发布
暂无评论
解决java多继承问题_Java_Java-fenn_InfoQ写作社区