0

OK、これは私に何度も起こったので、コミュニティに尋ねたほうがよいでしょう。何かをインスタンスとして宣言するか is-a 継承として宣言する (およびサブクラスのインスタンスを宣言する) のどちらが適しているかを判断する際に、しばしば問題が生じます。

例えば、

  public class BaseStation{
             public BaseStation( int x, int y ){
                    this.x = x;
                    this.y = y;
             }

             public void setX( int x ){ this.x = x; }
             public void setY( int y ){ this.y = y; }

             private int x;
             private int y;
    }

変更されないis-aと変更される is staticBaseStation- a の場合、位置が変更されるたびに を呼び出して、静的および動的 Ba​​seStation を個別のオブジェクトとして宣言することはできませんか? しかし、そうすることでオブジェクト指向の原則に違反する気がします。BaseStation(x,y)dynamicBaseStationBaseStation(x,y)dynamicBaseStationsetXsetY

では、基本的に、余分な作業のように感じる場合、継承を使用するかどうかをどのように決定すればよいでしょうか?

4

3 に答える 3