Java初学者的记录
//父类
class Father{
private int a = 0;
public int getA() {
return a;
}
public void setA(int a) {
this.a = a;
}
}
//子类
class Son extends Father{
private int a = 9;
@Override
public int getA() {
return a;
}
public void test(){//子类中输出本身属性与父类属性
System.out.println(this.getA());
System.out.println(super.getA());
}
}
//在测试类中对父类和子类创建各自的对象
@Test
public void TestFandS(){
Son s = new Son();
Father f = new Father();
s.setA(111111);//子类中调用父类方法,设置私有变量A的值
s.test();//掉用子类中方法,显示父类和子类的私有变量A的值
System.out.println(f.getA());//调用单独父类对象,显示其自有的A的值
}
这里看到结果,可以证明,Java在创建一个子类对象的同时,在子类对象的内存空间还有其父类的对象副本,这是单独的对象。