問題
選択肢
- 1データとそれを操作するメソッドをひとまとめにし、外部から直接アクセスできないようにすること
- 2既存のクラスの属性やメソッドを引き継いで新しいクラスを作成すること
- 3同じ名前のメソッドが、オブジェクトの種類に応じて異なる動作をすること
- 4プログラムを関数の組合せで記述すること
正解
1. データとそれを操作するメソッドをひとまとめにし、外部から直接アクセスできないようにすること
詳しい解説を見る解説を閉じる
解説
カプセル化とは、オブジェクト指向プログラミングにおいて、データ(属性)とそれを操作する手続き(メソッド)をオブジェクトとしてひとまとめにし、内部のデータには外部から直接アクセスできないように隠蔽することである。外部には必要なメソッドだけを公開し、内部の実装は隠すことで、不正な操作や意図しないデータの書き換えを防ぎ、内部の実装を変更しても外部への影響を小さくできる。既存クラスの属性やメソッドを引き継いで新しいクラスを作るのは継承、同じ名前のメソッドがオブジェクトの種類に応じて異なる動作をするのはポリモーフィズム(多態性)、関数の組合せでプログラムを記述するのは別のプログラミングの考え方である。カプセル化・継承・ポリモーフィズムはオブジェクト指向の三大概念として定義の入れ替え問題が頻出なので、まとめて整理しておこう。
一問一答
全200問を繰り返し学習