【发布时间】:2010-10-12 17:04:58
【问题描述】:
我正在使用 Java 中的某个 API 库。它有一个基类 A,以及扩展 A 的 B 和 C。B 和 C 提供相似但不同的功能,所有三个类都在库中。
public abstract class A
{
virtual foo();
}
public class B extends A {}
public class C extends A {}
如何在我的班级中获取A、B 和C 的元素?如果我使用接口来实现类,会有很多重复的代码,并且内部类不允许我覆盖现有的方法,从而保留A、B和C的调用接口。
如何在Java中实现多重继承?
编辑: 感谢乔治的编辑,现在更清楚了,忘了提到一个关键要求:我的类必须有 A 作为基础,以便它们可以由平台 API 管理。
【问题讨论】:
-
那么问题是什么?
-
@Hemang,查看这个问题的原始未编辑版本。
-
既然你已经google了,你可能知道java等很多语言都去掉了多重继承。如果您可以更具体,为什么在您的情况下必须拥有它,可以提出更好的替代方案
-
Groovy,虽然在技术上是另一种语言,但可以用作 Java 的扩展,因为大多数 Java 代码也可以在 Groovy 中使用。 Groovy 能够让您在现有 Java 类中注入/拦截方法。只是想我会把它扔出去,以防你没想到。