PHP オブジェクト指向
オブジェクト指向の3つの特徴
・継承
・多様性(ポリモーフィズム)
《継承》
//子クラス定義
Class B extends C {
//親との差分のみ記述
親のプロパティ
コンストラクタ
メソッド
を、すべて受け継ぐ
}
《多様性(ポリモーフィズム)》
多様性:メソッドの名前を変更せずに、新しい処理の定義ができること。
・オーバーライド(上書き)
親のメソッド名を使って、違う処理の内容をかける
親の同名のプロパティ・メソッドも参照可 (parent::○○)
・オーバーロード()
もともとは、引数が異なれば同名のメソッドを複数用意できるしくみ。
代わりに引数にデフォルト値を設定することができる。
例えば、コンストラクタに複数の引数とデフォルト値を用意しておけば、
クラスをインスタンス化する際、引数が違うクラス達を一つのコンスト
ラクター記述で初期化できる。
※今のところ、この使い方しか知らない。また出てきたら付け加えよう。
《カプセル化》
・public どこからでもアクセス可能
・protected クラス継承関係にあるクラスのみアクセス可能
・private 自分のクラス定義内でないとアクセスできない
クラスに定義するメソッドも public protected privateでアクセス権を定義する。
省略したらpublic になる。