当我试图通过在派生类方法中创建一个对象来实例化基类成员时,它应该被c.Id访问而不是出错
System.out.println("...")
答案 0 :(得分:1)
从类中派生,您可以访问父级的protected
成员,即true。但是,创建父类的实例并不授予您对该实例的private
或protected
成员的任何访问权限。基本上,就像你能想象的任何其他课程一样。
答案 1 :(得分:1)
我认为你想要的是:
public class RetailCust : Customer
{
public void Print()
{
this.id = 102;
}
}
没有必要在打印内部实例化一个Customer对象,因为看起来你正在尝试做的是将当前的RetailCust对象设置为ID为102?
编辑/更新:
没有理由实例化Customer
对象的原因是您是Customer
对象(只是更具体的RetailCust
类型)。因此,只需使用Customer
或this
来引用base
类所拥有的任何属性(如果您覆盖它并希望区分它和基础)。