【发布时间】:2010-04-14 08:08:47
【问题描述】:
问题是为什么默认情况下决定将变量设置为 final 和 static,将方法设置为 public 和 abstract。
是否有任何特别的理由让它们成为隐式的,可变为 final 和 static 以及方法为 public 和 abstract。
为什么他们不允许使用静态方法但允许使用静态变量?
我们的接口在Java中具有多重继承的特性并避免了菱形问题。但是它如何解决钻石问题,因为它不允许使用静态方法。
在下面的程序中,两个接口都有同名的方法..但是我们只实现了一个......钻石问题是这样解决的吗?
interface testInt {
int m = 0;
void testMethod();
}
interface testInt1 {
int m = 10;
void testMethod();
}
public class interfaceCheck implements testInt, testInt1{
public void testMethod() {
System . out . println ( "m is"+ testInt.m );
System . out . println ( "Hi World!" );
}
}
【问题讨论】:
-
我认为实现完全抽象
标签: java