0

所以我想知道是否有办法为bluej上的构造函数设置某些东西,比如将布尔值设置为true而不询问它的参数

public SaleItem(String description,
                double weight,
                boolean canBePickedUp,
                double cost)
{

    // initialise instance variables
    super(description,weight,(canBePickedUp = true));
    this.cost = cost;
}
4

2 回答 2

3

Java 不允许未指定参数的默认值。您可以执行以下操作

public SaleItem(String description, double weight, double cost) {

    // initialise instance variables
    super(description,weight,true);
    this.cost = cost;
}

您可以使用 canBePickedUp 参数执行第二个构造函数。

于 2012-11-01T17:32:52.660 回答
0

如果您想始终初始化canBePickedUptrue,则

 public SaleItem(String description, double weight, 
                                             boolean canBePickedUp, double cost) {
     // initialise instance variables
      super(description,weight,true);
      this.cost = cost;
 }

只要 super 是构造函数中的第一条语句就可以了。

于 2012-11-01T17:34:19.960 回答