在抽象类中创建方法

时间:2017-12-11 16:06:25

标签: java class methods abstract

所以我这里有一个Java抽象类。我需要为setupCostBase和monthlyCostBase创建setter和getter函数,以便它们可以从项目中的其他子类中获取值。但是,每当我尝试制作setter时,我总是会收到错误“< identifier> expected”。

不太确定如何解决此问题。

abstract public class Carrier {

    private String name = "Unknown Carrier";
    private double setupCostBase = 0.00;
    private double monthlyCostBase = 0.00;

    public Carrier(String name){
        this.name = name;
    }

    @Override
    public String toString(){
        return name;
    }

    private void setSetupCost(setupCostBase){
        this.setupCostBase = setupCostBase;
    }
}

3 个答案:

答案 0 :(得分:2)

"<identifier> expected"是一种通用错误,表明您的语法不正确。

在这种情况下,您尚未在此方法中声明参数setupCostBase的类型:

private void setSetupCost(setupCostBase){

应该是双倍的:

private void setSetupCost(double setupCostBase){

答案 1 :(得分:0)

这是因为您的setSetupCost()没有setupCostBase的类型。 试试这个:

private void setSetupCost(double setupCostBase){
    this.setupCostBase = setupCostBase;
}

答案 2 :(得分:0)

首先,你的二传手应该从外面可见,所以他们不应该是私人的。同样在您的示例中,您忘记了方法参数的类型。您的二传手应如下所示:

public void setSetupCostBase(double setupCostBase) {
    this.setupCostBase = setupCostBase;
}

public void setMonthlyCostBase(double monthlyCostBase) {
    this.monthlyCostBase = monthlyCostBase;
}