如何使用 Java 中的 super 关键字解决问题

How can I solve the problem using super keyword in Java

public class CommissionCompensationModel
{
  private double grossSales;
  private double commissionRate;

  public CommissionCompensationModel(double grossSales, double commissionRate)
  {
    this.grossSales=grossSales;
    this.commissionRate=commissionRate;
  }
}

这是我的 CommissionCompensationModel class

public class BasePlusCommissionCompensationModel extends CommissionCompensationModel
{
  protected double baseSalary;

  public void BasePlusCommssionCompenationModel(double grossSales, double commissionRate, double bs)
  {
    **super(grossSales, commissionRate);**
    this.baseSalary=bs;
  }
}

这是上一个的子class。拟继承其superclass加底薪属性。但是,IDE 告诉我 strong text 有一些问题。如何解决问题?

构造函数没有 return 类型,甚至 void 也没有。此外,您在那里有一个错字 - BasePlusCommssionCompenationModel 而不是 BasePlusCommissionCompensationModel(在“m”之后缺少“i”)。

修正拼写错误并删除 return 类型,您应该没问题:

public BasePlusCommissionCompensationModel(double grossSales, double commissionRate, double bs)
{
    super(grossSales, commissionRate);
    this.baseSalary=bs;
}

构造函数在子类中写错了

构造函数不能有 return 类型甚至 void

对此更新:

class CommissionCompensationModel {
    private double grossSales;
    private double commissionRate;

    public CommissionCompensationModel(double grossSales, double commissionRate) {
        this.grossSales = grossSales;
        this.commissionRate = commissionRate;
    }
}

class BasePlusCommissionCompensationModel extends CommissionCompensationModel {
    
    protected double baseSalary;
    
    public BasePlusCommissionCompensationModel(double grossSales, double commissionRate, double bs) {
        super(grossSales, commissionRate);
        this.baseSalary = bs;
    }

}