カプセル化
クラス外部から、クラス自体やクラスのインスタンスのプロパティやメソッドを直接呼び出せないようにすること。
クラス外部からは、クラス内部でデータがどのような形で保持されているかわからなくし、勝手に変更できなくさせることができる。ただ、PHP4ではクラスのプロパティやメソッドに直接アクセスするのを禁止することはできない。
PHP5では、プロパティ、メソッドの定義時にprivateやprotected宣言をすることで、クラス外から直接プロパティにアクセスできないように設定することが可能になった。varによるプロパティの宣言、あるいは何も指定せずにメソッドを宣言した場合は、public宣言と同じくクラス外からでもアクセスできるようになる。
privateとprotectedの違いについてだが、privateと指定するとそのクラス以外のどこからも直接アクセスすることができなくなるのに対し、protectedと指定すると、そのクラス内の他に、そのクラスを継承したクラス内からも直接アクセスすることが可能になる。
関連用語
Weblioに収録されているすべての辞書からカプセル化を検索する場合は、下記のリンクをクリックしてください。

- カプセル化のページへのリンク