标题: 交流一下 [打印本页] 作者: why910107 时间: 2016-6-12 21:41 标题: 交流一下 27.查看下面代码:
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);
}
}
输出为多少 ( )
A.10 10
B.10 20
C.20 10
D.20 20作者: lifeiwangyue 时间: 2016-6-12 21:58
20,10 作者: 醇逸 时间: 2016-6-12 22:29
答案C
我又测试了如下代码:
A a1=new B();
B b1=(B) a1;
System.out.println(b1.i);
System.out.println(a1.i);
结果还是C。
所以,不管事向上转型还是向下转型,多态中成员方法仍是【编译看左,运行看左】。