黑马程序员技术交流社区
标题:
子类实现的接口怎么调用自己属性的?源于什么?
[打印本页]
作者:
胡建彪
时间:
2012-10-16 10:48
标题:
子类实现的接口怎么调用自己属性的?源于什么?
interface Intf
{
int x=5;
}
public class InterfaceTest implements Intf{
public static void main(String[] args) {
new InterfaceTest().printX();
System.out.println(Intf.x);//接口直接调用属性在子类中使用???
}
public void printX(){
System.out.println(x);
}
}
此处接口怎么可以直接使用它的属性啊? 大神们来解释解释。。。
作者:
梁世喜
时间:
2012-10-16 10:59
接口中定义的变量都隐含修饰符 public static final
所以这里的 int x=5 ; 可以理解为 public static final int x=5;
所以可以使用 Intf.x
子类实现接口的同时具有接口中的(都是 public )变量 ,所以可以直接使用 x
作者:
毕影彬
时间:
2012-10-16 11:58
因为x在接口中为静态常量,静态常量是存放在内存的数据区,且不能被改变和赋值,只有一份。而且,不需要New出对象,就可以直接由 类名.静态常量(Intf.x),这样直接使用。 因为他"只此一家,别无分号",呵呵。
作者:
胡建彪
时间:
2012-10-16 18:41
梁世喜 发表于 2012-10-16 10:59
接口中定义的变量都隐含修饰符 public static final
所以这里的 int x=5 ; 可以理解为 public static ...
Thanks for replying. Correct Explaination.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2