Java中接口实现的继承

TLD*_*LDR 3 java inheritance interface

我有两个关于Java接口的问题.1)如果一个类碰巧实现了接口I的所有接口方法,而没有声明自己实现它们,它仍然可以用作I类变量的输入吗?2)实现接口I的A类的子类是否继承了该接口的一致性,还是应该声明自己实现I?

Zoo*_*ork 16

如果一个类碰巧实现了接口I的所有接口方法,而没有声明自己实现它们,它仍然可以用作I类变量的输入吗?

不,你所描述的更类似于鸭子打字.

实现接口I的A类的子类是否继承了该接口的一致性,还是应该声明自己实现I?

假设你的意思是:

public class A implements I { /* ... */ }

public class B extends A { /* ... */ }
Run Code Online (Sandbox Code Playgroud)

在这种情况下,B工具I.