扩展抽象类的类是否仍然必须实现抽象类正在实现的接口?:java

问题描述

public abstract class ClassA implements ClassB{
}



public class ClassC extends ClassA implements ClassB{
}

既然类“ClassC”是继承类“ClassA”,那么“ClassC”还需要实现“ClassB”吗?还是为“ClassC”类自动实现“ClassB”?

解决方法

假设 ClassA 不是 abstract 并且完全实现了 ClassB,那么 ClassC 继承了 ClassA 的实现并且不需要从ClassB 除非它想覆盖该行为。

它也不需要指定 implements ClassB。以下示例有效:

public static interface I { }
public static class A implements I { }
public static class B extends A { }

public static void main(String[] args) {
    I b = new B();
}
,

您不需要再次实现它已经由产品类实现了,我已经创建了一个示例来向您展示

enter image description here

我创建这个方法只是为了向您展示它是如何工作的

enter image description here

enter image description here

enter image description here

如果将接口实现到超类中,所有子类都将拥有接口方法! 希望它有帮助:)