正答1
解説
正解は1です。
オブジェクト指向の概念ごとの効果を区別する問題です。
カプセル化は、データとそれを操作するメソッドを一体化し、内部を外部から隠すことです。
【選択肢別解説】
1:○ カプセル化では、ほかのオブジェクトは公開されたメソッドだけを通じて操作します。
そのため、内部のデータ構造や実装を変えても、ほかのオブジェクトへの影響が小さくなります。
2:× ユーザ定義型を追加して仕様を拡張できるのは、抽象データ型の効果です。
カプセル化そのものの効果ではありません。
3:× 子クラスが親クラスの属性を利用できるのは、継承(インヘリタンス)の効果です。
4:× 同じメッセージに対して受け手ごとに異なる動作をするのは、多態性(ポリモーフィズム)の効果です。
【ポイント】
カプセル化は「情報隠ぺいによる変更の影響の局所化」、継承は「再利用」、多態性は「呼出し側の変更不要」と効果を対応させて覚えます。