オブジェクト指向言語Javaにおける継承と委譲に関する記述のうち,最も不適切なものはどれか。
① 委譲とは継承関係にないクラスに共通部をくくりだし,そのクラスのオブジェクトを通して共通部を利用するプログラミング手法である。
② 共通部を含むプログラムに対しては,共通部を基底クラスにくくりだし,基底クラスを継承することによって冗長なプログラム記述を排除するべきである。
③ 継承することによって上位型のすべてのプログラム記述が下位型に存在することになる。
④ すべての上位型のプログラムが継承の対象となるため,クラス階層は注意して設計しなくてはならない。
⑤ 汎化関係にないクラスを下位型として定義することで重複する共通部分の排除を行うことは弊害が大きいため,継承ではなく委譲を利用するべきである。
答え
③
解説
① XXX
XXX
② XXX
XXX
③ XXX
XXX
④ XXX
XXX
⑤ XXX
XXX