a63181182 于 2014.01.06 20:56 提问
- 抽象类的继承问题,输出结果的变化
-
public abstract class Test4 {
public String i="4";
public abstract void print();
Test4(){
print();
}
}public class Test5 extends Test4{
String i="6";
Test5(){
super();
}
@Override
public void print() {
System.out.println(i);} public static void main(String[] args) { Test5 t = new Test5(); t.print(); }
}
运行的结果是
null
6public abstract class Test4 {
public String i="4";
public abstract void print();
Test4(){
print();
}
}public class Test5 extends Test4{
//String i="6";这个地方的i被屏蔽以后 输出的结果就出现了变化
Test5(){
super();
}
@Override
public void print() {
System.out.println(i);} public static void main(String[] args) { Test5 t = new Test5(); t.print(); }
}
运行的结果是
4
4请问出现这个null结果的问题是虚拟机加载的问题还是继承的问题,求清楚的解答
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!