黑马程序员技术交流社区
标题:
解析一下
[打印本页]
作者:
孙铭泽
时间:
2012-8-23 22:13
标题:
解析一下
interface A
{ int x = 0; }
class B
{ int x =1; }
class C extends B implements A
{ public void pX(){ System.out.println(x); }
public static void main(String[] args)
{ new C().pX(); } }
好像是错了。
作者:
吴通
时间:
2012-8-23 22:22
首先C继承B之后,x变量的权限不够大就不能再继承A中的x,
并且下面主函数要调用本类的函数不需要创建类对象的
作者:
黑马王建伟
时间:
2012-8-23 22:31
调用的x要指定为接口中的x,如果是继承类中的x,x要被static修饰,直接代码加注释:
interface A{
int x = 0;
}
class B{
int x =1;
//static int x=1; //如果要指定继承类中的x,这里要用static修饰
}
public class Hello extends B implements A {
public void pX(){
System.out.println(A.x); //要指定是接口A中的变量x,
//System.out.println(A.x); //如果要指定继承类中的x,这里要用static修饰
}
public static void main(String[] args){
new Hello().pX();
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2