平成22年度春期 プロジェクトマネージャ試験 午前II 問17
【問題17】
次のクラス図におけるクラス間の関係の説明のうち,適切なものはどれか。
“バス", “トラック" などのクラスが “自動車" クラスの定義を引き継ぐことを,インスタンスという。
“バス", “トラック" などのクラスの共通部分を抽出し “自動車" クラスとして定義することを,汎化という。
“バス", “トラック" などのクラスは,"自動車" クラスに対するオブジェクトという。
“バス", “トラック" などのそれぞれのクラスの違いを “自動車" クラスとして定義することを,特化という。
【解説】
ア: “バス", “トラック" などのクラスが “自動車" クラスの定義を引き継ぐことを,インスタンスという。
誤り。インスタンスとは、クラスを基に作成された具体的なオブジェクトのことです。ここではクラス間の継承関係を表しています。これはインヘリタンスの説明です。
イ: “バス", “トラック" などのクラスの共通部分を抽出し “自動車" クラスとして定義することを,汎化という。
正しい。汎化(Generalization)は、複数の具体的なクラス(バスやトラック)に共通する特徴を抽出し、より上位の抽象的なクラス(自動車)として定義することです。
ウ: “バス", “トラック" などのクラスは,"自動車" クラスに対するオブジェクトという。
誤り。クラスとオブジェクトは異なる概念です。ここでの “バス" や “トラック" はクラスであり、オブジェクトではありません。親クラスから引き継いだ特性に、独自の特性を定義して特化させたクラスを「子クラス(サブクラス)」と言います。
エ: “バス", “トラック" などのそれぞれのクラスの違いを “自動車" クラスとして定義することを,特化という。
誤り。特化(Specialization)は、上位クラス(自動車)を基にして下位クラス(バスやトラック)を定義するプロセスを指します。
【答え】
イ: “バス", “トラック" などのクラスの共通部分を抽出し “自動車" クラスとして定義することを,汎化という。
出典:平成22年度 春期 プロジェクトマネージャ試験 午前II 問17