×
データ構造とアルゴリズム

カプセル化の解説(基本情報技術者シラバス用語)

カプセル化とは

カプセル化(かぷせるか)とは、オブジェクト指向プログラミングにおいて、データ(変数)とそれを操作する処理(メソッド)を一つのオブジェクト(クラス)にまとめ、外部から直接データを覗き見たり、勝手に書き換えたりできないように保護する仕組みのことです。薬のカプセルのように、中身(不要な詳細情報や重要な設定値)を隠蔽して安全に保護します。外部とのやり取りは、専用の公開された窓口(メソッド)を介してのみ行うルールにすることで、プログラムの他の部分からの不正なアクセスを防ぎ、システムの安全性や独立性を高めることができます。

具体例

銀行の「口座残高」を管理するシステムを考えます。残高データを誰でも直接変更できると困るので隠蔽(非公開に)します。残高を操作するには、必ず「預金する」「引き出す」という専用のメソッドを通すように制限します。これにより、残高がマイナスになるような不正な入出金を防ぐことができます。

もう少し詳しく