Java不允许多重继承来保护钻石问题。它使用接口来解决此问题。
那么说说使用接口的情况
interface A{
run();
}
interface B{
run();
}
class C implements A, B{
run() {} //Which interface we are using?
}
当我们run()
在类中调用方法时C
,如何确定正在使用哪个接口?
你不知道 没关系,因为实现不是在接口上,而是在类上。因此,实现是唯一的。没有歧义。
是什么呢,如果每个声明希望有一个不同的返回类型件事:
interface A{
void run();
}
interface B{
String run();
}
class C implements A, B{
???? run() {}
}
这是您在Java中遇到多个接口问题的唯一方法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句