0

Square 型のオブジェクトを格納する配列を次のように宣言しました。

Square[][] square_array = new Square[15][15];

Ballというクラスもあります。

Square_array に Ball オブジェクトを格納することは可能ですか? もしそうなら、どうすればこれを行うことができますか?

乾杯

4

2 に答える 2

0

一般的なオブジェクト クラスの拡張に関するvk の回答 (これにより、配列から繰り返し表示することが容易になります) に加えて、任意の数の異なるタイプのオブジェクトを受け入れる ArrayList の使用を検討することもできます。

Sq sq = new Sq();
Ba ba = new Ba();
ArrayList sqAndBa = new ArrayList();

void setup() {
sqAndBa.add(sq);
sqAndBa.add(ba);

void draw() {
// now iterate through your ArrayList and display your objects:
for (int i = 0; sqAndBa.size(); i++) {
    Ob ob = (Ob) sqAndBa.get(i);
    ob.display();

class Ob {
    // construction and display methods common to both
}

class Sq extends Ob {
    // construction or display methods particular to squares
    return sq;
}

class Ba extends Ob {
    // construction and display methods particular to circles
    return ba;
}
于 2013-06-01T10:26:17.853 に答える
0

おそらく、オブジェクトクラスを作成し、それを拡張するために正方形とボールを持っています。両方を含むことができるオブジェクト配列を作成するよりも...継承の継ぎ目は古い方法です...

Sq sq = new Sq();
Ba ba = new Ba();
Ob[] sqAndBa = new Ob[2];

void setup() {
  sqAndBa[0] = sq; 
  sqAndBa[1] = ba;
  println(sqAndBa);
}


class Ob {
}

class Sq extends Ob {
  String toString() {
    return("I'm a square");
  }
}

class Ba extends Ob {
  String toString() {
    return("I'm a ball");
  }
}
于 2013-05-31T15:34:12.630 に答える