Javaでのスーパーの使用

HoodCoolege:

以下のためにCubeクラス、私はエラーを取り除くためにしようとしています:

Cube.java:12: error: constructor Rectangle in class Rectangle cannot be applied to given types;
    super(x, y);
    ^
  required: int,int,double,double
  found: int,int.......

キューブの各面が長方形であり、その長さと幅がキューブの辺と同じである必要があることを知っていますが、長さと幅を同じにするためにRectangleコンストラクターに何を渡す必要があるのか​​わかりません。キューブの側面。

また、長方形の面積にキューブの辺の長さを掛けた体積を計算しようとしています

これはCubeクラスです

// ---------------------------------
// File Description:
//   Defines a Cube
// ---------------------------------

public class Cube extends Rectangle
{


  public Cube(int x, int y, int side)
  {
    super(x, y);
    side = super.area(); // not sure if this is right
  }


  public int    getSide()   {return side;}

  public double area()      {return 6 * super.area();}
  public double volume()    {return super.area() * side;}
  public String toString()  {return super.toString();}
}

これは長方形クラスです

// ---------------------------------
// File Description:
//   Defines a Rectangle
// ---------------------------------

public class Rectangle extends Point
{
  private int    x, y;  // Coordinates of the Point
  private double length, width;

  public Rectangle(int x, int y, double l, double w)
  {
    super(x, y);
    length = l;
    width = w;
  }

  public int       getX()         {return x;}
  public int       getY()         {return y;}
  public double    getLength()    {return length;}
  public double    getWidth()     {return width;}

  public double area()      {return length * width;}
  public String toString()  {return "[" + x + ", " + y + "]" + " Length = " + length + " Width = " + width;}
}
ブレイク・ヤーブロー:

このオブジェクトの構築そのものが、拡張の概念を見逃しているようです。

A CubeはではありませんRectangle、向きの空間データを含むCube複数Rectangleのの複合と考えることができますが、長方形はのメンバー(読み取り属性/フィールド)である必要がありCubeます。

この点を説明するために、次のステートメントの違いを検討してください。

すべての立方体は長方形です。

すべての猫は動物です。

Catスーパークラスを拡張するオブジェクトを作成することもできますAnimalCubeRectangleはこの関係を共有していません。

コードを次のようにリファクタリングすることを検討してください:

public class Cube {
    private List<Rectangle> faces:

    ....

}

これをさらに一歩進めるために、すべてRectangleのがであるとは限りませんPoint

ポイントは、x、y座標の1つのペアです。正確に描画するためにRectangle必要な情報の最小量は2 Point秒です。

見る

+--
| |
--+

反対側のコーナーPoint(ここでは+でマークされています)がある場合は、を描くことができますRectangle

これを踏まえると、おそらくsのRectangleペアをPointメンバーとして持つようにリファクタリングする必要もあります

何かのようなもの:

public class Rectangle {
    private Point firstCorner;
    private Point secondCorner;

    ...
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Javaでのint a = a + 1とa ++の使用のパフォーマンスの違い

分類Dev

Apacheのスパーク:効果的にJavaでmapPartitionsを使用して

分類Dev

Javaでのinstanceofの使用によるパフォーマンスへの影響

分類Dev

任意の長さのパスワードを使用したJavaでのAES暗号化

分類Dev

Javaクラスパスでのワイルドカードの使用

分類Dev

Javaのスパース行列

分類Dev

LogicAppのトリガーのパスでのパラメーターの使用

分類Dev

Java内でパスワード付きのRSAキーを使用する方法

分類Dev

Javaのスパークでwithcolumnを使用して別の列を反復処理

分類Dev

Dockerでのスーパーバイザーの使用

分類Dev

スーパーバイザーでのpdbの使用

分類Dev

operator()でのブーストパラメーターの使用

分類Dev

ファイルの宣言されたパス内でパラメーターの名前を使用する方法-java

分類Dev

Javaでの「this」の使用と短いパラメーター名

分類Dev

Java内部クラスでの型パラメーターの作成

分類Dev

Javaでのパスのハードコーディング部分

分類Dev

Java 8でのJava 7コンパレータの使用

分類Dev

AWS Systems Managerパラメーターストア:JavaでのKeyValueペアとしてのStringListの使用(Lambda)

分類Dev

Javaでの「if」と「if else」のパフォーマンスの違い

分類Dev

Javaでの「if」と「if else」のパフォーマンスの違い

分類Dev

Java でのパスの階層へのソート

分類Dev

Javaでのキャストのパフォーマンス

分類Dev

Groovyスクリプトでのパラメーターの使用

分類Dev

カスタムヘルパーでのデータの使用

分類Dev

.flaでのスパークコンポーネントの使用

分類Dev

Javaのjava.util.concurrent.atomicパッケージのクラスの正確な使用法は何ですか?

分類Dev

Javaの:スーパーを使用して呼ばれるスーパー隠されたフィールドの値は何ですか?

分類Dev

java他のパッケージでクラスを使用する方法?

分類Dev

Javaのパッケージ内でメインクラスを使用する

Related 関連記事

  1. 1

    Javaでのint a = a + 1とa ++の使用のパフォーマンスの違い

  2. 2

    Apacheのスパーク:効果的にJavaでmapPartitionsを使用して

  3. 3

    Javaでのinstanceofの使用によるパフォーマンスへの影響

  4. 4

    任意の長さのパスワードを使用したJavaでのAES暗号化

  5. 5

    Javaクラスパスでのワイルドカードの使用

  6. 6

    Javaのスパース行列

  7. 7

    LogicAppのトリガーのパスでのパラメーターの使用

  8. 8

    Java内でパスワード付きのRSAキーを使用する方法

  9. 9

    Javaのスパークでwithcolumnを使用して別の列を反復処理

  10. 10

    Dockerでのスーパーバイザーの使用

  11. 11

    スーパーバイザーでのpdbの使用

  12. 12

    operator()でのブーストパラメーターの使用

  13. 13

    ファイルの宣言されたパス内でパラメーターの名前を使用する方法-java

  14. 14

    Javaでの「this」の使用と短いパラメーター名

  15. 15

    Java内部クラスでの型パラメーターの作成

  16. 16

    Javaでのパスのハードコーディング部分

  17. 17

    Java 8でのJava 7コンパレータの使用

  18. 18

    AWS Systems Managerパラメーターストア:JavaでのKeyValueペアとしてのStringListの使用(Lambda)

  19. 19

    Javaでの「if」と「if else」のパフォーマンスの違い

  20. 20

    Javaでの「if」と「if else」のパフォーマンスの違い

  21. 21

    Java でのパスの階層へのソート

  22. 22

    Javaでのキャストのパフォーマンス

  23. 23

    Groovyスクリプトでのパラメーターの使用

  24. 24

    カスタムヘルパーでのデータの使用

  25. 25

    .flaでのスパークコンポーネントの使用

  26. 26

    Javaのjava.util.concurrent.atomicパッケージのクラスの正確な使用法は何ですか?

  27. 27

    Javaの:スーパーを使用して呼ばれるスーパー隠されたフィールドの値は何ですか?

  28. 28

    java他のパッケージでクラスを使用する方法?

  29. 29

    Javaのパッケージ内でメインクラスを使用する

ホットタグ

アーカイブ