次のシナリオを実現したいと思います。(例)
私は3つのクラスを持っています:
- コントローラ
- アップル
- 車
public class Apple implements IBonus {
public String name;
public String weight;
}
public class Car implements IBonus{
public String brand;
public String vmax;
public String power;
}
public class Controller {
public List<String> values;
public void doWork(IBonus bonusObject){
if(bonusObject instanceOf Car){
Car c = (Car)bonusObject;
values.add(c.brand);
values.add(c.vmax);
values.add(c.power);
}
if(bonusObject instanceOf Apple){
Apple a = (Apple)bonusObject;
values.add(a.name);
values.add(a.weight);
}
}
}
今、私はリンゴや車のような多くのクラスを持っています. また、近い将来、各クラスの一部の変数が変更、追加、または削除される可能性もあります。これは、コントローラ クラスのコードを常に調整する必要があることを意味します。
誰か適切なパターンを知っていますか?