背景:定义了 Employeee 类 public class Employee { private String name; private double salary; private LocalDate hireDay; //........ Getter and Setter} 定义一个 Manager 类继承 Employee public class Manager extends Employee {
private double bonus;
//........
public void setBouns(double bouns) {
this.bonus = bouns;
}}
现在创建一个数组列表,ArrayList<employee> staff = new ArrayList<>(); 向列表中添加元素</employee>
staff.add(new Manager("狗蛋",1000,2019,9,10)); 向 staff 中添加 Manager 类是可行的 但是当我想 staff.get(0).setbonus;时却会报错 我想跟这是子类特有属性有关但不知道具体为什么 像是 staff.get(0).getSalary 什么的都是没有问题的 setbonus 却不行这是为什么 而且子类对象可以添加进父类对象的数组列表,我也不清楚为什么,有没有大佬解答?