問題
問46 オブジェクト指向でシステムを開発する場合のカプセル化の効果はどれか。
ア オブジェクトの内部データ構造やメソッドの実装を変更しても、ほかのオブジェクトがその影響を受けにくい。
イ 既存の型に加えてユーザ定義型を追加できるので、問題領域に合わせてプログラムの仕様を拡張できる。
ウ 子クラスとして派生するので、親クラスの属性を子クラスが利用できる。
エ 同一メッセージを送っても、受け手のオブジェクトによって、それぞれが異なる動作をするので、メッセージを受け取るオブジェクトの種類が増えても、メッセージを送るオブジェクトには影響がない。
解説と解答
オブジェクト指向におけるカプセル化とは、関わりの強いデータと手続きを一体化してオブジェクトとしてまとめ、外部から直接扱えないように隠ぺいすることです。外部からは公開された手続きを利用しないとデータを操作できないため、個々のオブジェクトの独立性が高まり、オブジェクト内部の仕様変更が外部に影響しにくくなるという効果があります。それぞれの選択肢の記述を確認しましょう。
選択肢アは、カプセル化に関する適切な記述です。
選択肢イは、オブジェクト指向のプログラミング言語に関する説明です。カプセル化の説明としては適切ではありません
選択肢ウは、継承の効果に関する記述です。
選択肢エは、ポリモルフィズムの効果に関する記述です。
以上より正解は、選択肢アです。
アイティ・アシスト インストラクタ