我有两个类,Staffand AdvancedStaff,它扩展了前者。
Staff有这个构造函数:
public Staff (String number, String title, String name, String role, char level) {
staffNumber = number;
staffTitle = title;
staffName = name;
staffRole = role;
payScaleLevel = level;
}
我会注意到所有实例变量都已设置为私有。
虽然,Advanced Staff有这个构造函数:
public AdvancedStaff (String number, String title, String name) {
super(number, title, name);
role = "Entry level Advanced Staff";
level = 'A';
}
Staff但是,这会为我的构造函数引发“未找到符号”错误。
我试过使用super.staffRole = "Entry level Advanced Staff";,但我的超类的私有范围阻止了这一点。
我发现将字段String role和添加char level到我的AdvancedStaff构造函数允许我调用超级构造函数,但我想知道是否有一种方法可以调用超级构造函数而不在我的子类构造函数中传递其所有参数?