gpt4 book ai didi

java - 为什么一个接口(interface)不能实现另一个接口(interface)?

转载 作者:IT老高 更新时间:2023-10-28 11:26:06 25 4
gpt4 key购买 nike

我的意思是:

interface B {...}

interface A extends B {...} // allowed

interface A implements B {...} // not allowed

我搜索了一下,发现 this :

implements denotes defining an implementation for the methods of an interface. However interfaces have no implementation so that's not possible.

然而,接口(interface)是一个100%抽象类,一个抽象类可以实现接口(interface)(100%抽象类)而不用实现它的方法。定义为“接口(interface)”有什么问题?

详细一点,

interface A {
void methodA();
}

abstract class B implements A {} // we may not implement methodA() but allowed

class C extends B {
void methodA(){}
}

interface B implements A {} // not allowed.
//however, interface B = %100 abstract class B

最佳答案

implements 表示实现,而 interface 表示声明只是为了提供 interface 而不是实现。

100% abstract class 在功能上等同于 interface 但如果您愿意,它也可以有实现(在这种情况下,它不会保持 100% abstract),所以从 JVM 的角度来看,它们是不同的东西。

100% 抽象类中的成员变量也可以有任何访问限定符,在接口(interface)中它们是隐式的public static final

关于java - 为什么一个接口(interface)不能实现另一个接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3921412/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com