interface abs{
int a=10;// by default final static
void callme();
}
class B implements abs{
int a =11;// reinitializing
void call()
{
System.out.println("No problem"+a);
}
public void callme()
{
System.out.println("Call me"+a);
}
}
class main{
public static void main(String args[]){
B m=new B();
m.call();
m.callme();
}
}
在 Herbert Schildt 的书中,我读到接口(interface)变量默认为 Final 和 static。这隐含地意味着它将像常量一样起作用。但是当我在上面提到的代码中为变量 a 分配 11 时,它没有给出任何错误。
o/p 没问题11 给我打电话11
最佳答案
您不是在重新初始化变量,而是隐藏它。
为了访问abs
的a
成员,您必须使用接口(interface)名称来引用它。像这样的东西:
System.out.println("No problem" + abs.a);
关于java - 可以重新初始化接口(interface)变量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32345674/