我在继承方面遇到了一些麻烦。我所做的是一个超类,因为子类中的一些属性是相同的。
我正在尝试引用超类,我尝试将super(name);
放在行name = replacementName;
之上,它不会编译说name has private access in the Superclass 'person'.
我知道它不会访问private
} field但是如何从子类方法中的超类中获取名称?
这是方法。
public void changeName(String replacementName){
name = replacementName;
}
帮助表示感谢。
答案 0 :(得分:1)
您有几种选择:
1 - 在您的超类中,对name属性使用私有声明并添加公共(或受保护的)getter / setter。然后,您可以使用setter方法从子类中修改超类字段。
2 - 在你的超类中,为你的名字字段使用受保护的声明。然后,您可以直接从您的子课程访问它。
...