2

除了实现接口之外,我们可以用于多重继承的其他选项是什么

4

4 回答 4

3

一个直接的答案是使用内部类。这为您提供了两个(或更多)密切相关但涵盖独立基类的对象。

一般来说,更喜欢组合而不是继承。在任何地方都使用继承是一个常见的错误。然而,这留下了难以遵循的不灵活的解决方案。

于 2008-12-22T16:51:56.907 回答
1

首先,最好避免多重继承,使用接口。而Java实际上并不支持多重继承。

但是您可以使用 mixins 来伪造多重继承。有一些关于此的手册:

Java中的多重继承

Java Mixin 模式,或伪造多重继承

如果你想复合,我建议看看Qi4j框架:

Qi4j 的面向复合编程

于 2008-12-22T17:19:38.943 回答
0

Java 没有多重继承

Java 教程的接口页面:

Java 编程语言不允许多重继承 ... ,但接口提供了一种替代方法。

由于多个接口可以由一个类实现,因此可以用作 Java 中实际多重继承的替代或替代。

于 2008-12-22T16:52:48.670 回答
0

您可能必须使用组合 - 即,将“父”类的实例作为“子”类的成员。(此处的“父”和“子”表示如果您使用继承,这两个类将具有的关系。)包含(“子”)类必须包装被包含(“父”)类的接口以公开任何功能包含的类

平滑包装过程的一种方法是让包含类和包含类都实现相同的接口——包含类中此接口的方法的实现可以直接调用包含类上的相同方法。

于 2008-12-22T17:20:53.260 回答