class Fu
{
int a = 5;
public void m1()
{
System.out.println("父类的方法");
}
}
class Zi extends Father
{
int a = 10;
public void m1()
{
System.out.println("子类的方法");
}
}
public class MyTest {
public static void main(String as[])
{
Fu f = new Zi();
System.out.println("a=" + f.a);
}
打印输出是 5,我现在知道成员变量编译和运行时都是看等号左边。
我想知道具体的过程是怎么样的,最好有内存详解。
求大神解答。
肯定是赋值了。
如果子类有这段代码:
public void method()
{
System.out.println(this.a+"....."+super.a);
}
主函数调用后,会输出10.....5