Tag: 多inheritance

Java中的多重inheritance所有类都是从Object类扩展的?

我有一个简单的问题: 如果我声明一个类A – 意味着该类隐式inheritance自Object Class。 现在如果B类inheritance自A类 这个B类也不是从Object类inheritance吗? 如果是,这是否意味着编写关键字’extends’一些如何覆盖隐式inheritance(来自类Object)?

类文件可以实现多少接口

类文件可以实现多少个接口? 类文件使用的接口数量是否有限制? 提前致谢。

Java中的多重inheritance设计问题

你如何处理在java中只有单一inheritance? 这是我的具体问题: 我有三个(简化的)课程: public abstract class AbstractWord{ String kind; // eg noun, verb, etc public String getKind(){ return kind; } } public class Word extends AbstractWord{ public final String word; ctor… public void setKind(){ // based on the variable word calculate kind.. } } public class WordDescriptor extends AbstractWord{ ctor.. public void setKind(String kind){this.kind = […]

类扩展多个Java类?

我知道一个类可以实现多个接口,但是可以扩展多个类吗? 例如,我希望我的类扩展TransformGroup和我创建的类。 这在Java中可行吗? 两个语句class X extends TransformGroup extends Y和class X extends TransformGroup, Y接收错误。 如果不可能,为什么? TransformGroup扩展了Group但我想它也扩展了Node因为它inheritance了Node字段,并且可以在需要Node对象的地方传递。 此外,与Java中的所有类一样,它们扩展了Object类。 那么为什么不可能扩展到多个类? TransformGroupinheritance 那么,如果可能的话,做到这一点的正确方法是什么? 如果没有,为什么以及如何解决问题呢?

具有相同方法签名的两个接口在Java类中实现

我有两个Java接口和一个实现类。 (我已经使用Eclipse直接运行程序,并且我没有尝试通过从命令行显式编译来检查任何编译器警告等。) 为什么他们没有问题? 为什么Java允许这样做,即使它满足两个接口的“契约”但是在实现类时产生歧义? 更新了示例。 public interface CassettePlayer { void play(); } public interface DVDPlayer { void play(); } public class CarPlayer implements CassettePlayer,DVDPlayer{ @Override public void play() { System.out.println(“This plays DVD, screw you Cassette !”); } public static void main(String args[]) { CarPlayer cp = new CarPlayer(); cp.play(); CassettePlayer firstInterface = new CarPlayer(); firstInterface.play(); […]

java中的多重inheritance

Java不允许从多个类inheritance(仍允许从多个接口inheritance。),我知道它非常符合经典的钻石问题。 但是我的问题是,当从多个基类inheritance时没有歧义(因此没有钻石问题的机会)时,java不允许像C ++这样的多重inheritance?