0

すでに別のクラスから派生したクラスからクラスを作成しようとしています。(少し紛らわしい) 最新の「PricedApt」クラスに「price」という属性が 1 つ追加されます。望ましいコンストラクター呼び出しは次のとおりです。

   PricedApt p = new PricedApt("jill", 900, true, "jack", 1050.00);

クラスにコンストラクターがなく、作成しようとしていますが、何が問題なのかわかりません。

これは(すでに派生した(2番目の)クラスです)

public class RentalApt extends Apartment{

      private String tenant;
      private boolean rented;

      public RentalApt(String owner, int size, boolean rented, String who){
        super(owner,size);
        tenant = who;
        this.rented = rented;
      }

私が試みた(3番目の)クラスの私のコードは

public class PricedApt extends RentalApt {

private double price;

public PricedApt(String owner, int size, boolean rented, String who, double priceTag) {
  super(owner,size,who);
  price = priceTag;
}

}

私が間違っていることについて、誰かが私を正しい方向に向けることができますか? 私が受け取っているコンパイル エラーは、シンボルが見つかりません (行 2 列 3) です。

4

1 に答える 1

6

たとえば、RentalApt には 4 つの引数のコンストラクターがありますが、そのサブクラス PricedApt は 3 つの引数のみで super() を呼び出しています。

変更してみる

super(owner,size,who);

に:

super(owner,size,rented,who);
于 2013-03-28T04:44:27.497 に答える