黑马程序员技术交流社区
标题: 代码问题 [打印本页]
作者: zhaojingxi 时间: 2015-8-30 22:07
标题: 代码问题
class A {
public int i = 10;
}
class B extends A{
public int i = 20;
}
public class Test{
public static void main(String args[]){
B b = new B();
A a = b;
System.out.println(b.i);
System.out.println(a.i);
}
}
请问大神这段代码的输出是多少?为什么?
作者: 郝佳轩 时间: 2015-8-30 22:07
体现了多态的思想。。。。。
作者: 郝佳轩 时间: 2015-8-30 22:11
应该是20,10吧,因为B继承了父类A
作者: a6658637 时间: 2015-8-30 22:12
b.i=20 ,a.i=20
作者: 肖天长 时间: 2015-8-30 22:40
20和10 因为子继承了父,调用的非静态成员变量还是走自身的!
作者: 水果牛牛 时间: 2015-9-10 09:57
20和10,对于多态来说,变量和静态方法走的都是等号左边的类
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |