OOPプログラミングの概念が欠けていると思いますが、正確にはわかりません。
異なるクラスから作成されたオブジェクトをどのように使用できますか?
たとえば、カードを使用する必要があるとします。Cardクラスがあり、すべての共有プロパティが含まれています。通常のカードとジョーカーカードはカードクラスから継承され(ジョーカーは任意のカードの色を引き継ぐことができます)、カードは価値がないかポイントの価値があるため、NormalCardから継承されたScoreCardがあります。
では、プログラミング中にこのモデルをどのように使用できますか?配列でN枚のカードを作成しますが、カードを生成するときに、実際のカードがジョーカー/スコア/通常のカードであるかどうかを判断する必要がありますか?そして後で、カードがジョーカー/ノーマル/スコアカードであるかどうかをどのようにテストできますか?なぜなら、ScoreCard
aprivate int score;
とsetters / gettersがある場合、NormalCard
はこのプロパティを持たないため、ifステートメントを作成するときに、何をテストすればよいかわからないからです。
Card[] cardsArray = new Card[52];
for (int i = 0; i<cardsArray.length;i++) {
//Some source tells if a card is a Score/Normal/Joker
String src;
switch (src) {
case "Joker":Card[i] = new JokerCard();
break;
case "Normal":Card[i] = new NormalCard();
.... etc
}
}
//Some Userevent:
..userevent(Card in) {
//Test what
if (in.value == 4) {
this.user.setScore(this.user.getScore()+in.score);
}
}