这里ex是子对象的父引用
如果我在派生类中声明int x,则输出更改为20,20
但是,如果我不在派生类中声明x,则输出为30,4
我在想如果我在派生类中声明x,是否会创建x的2个副本?
请帮助
rho
答案 0 :(得分:0)
使用extend
(继承)时,孩子需要使用super
来访问父级的方法和数据字段。无需在子级中重新定义变量x
。
考虑以下代码块:
public class Derived extends Base
{
int z;
public Derived()
{
super(); // call the parent's constructor
System.out.println(" derived constructor running");
super.x = 30; // access parent's data field x
}
public void setVal()
{
System.out.println(" x value changed in derived");
super.x = 4;
}
}