1-16クラス・オブジェクトTips247 メソッドをオーバーライドする
Level2
Point親クラスのメソッドと同じ名前のメソッドを定義する
クラスを継承して子クラスを定義した場合には、メソッドはそのまま引き継ぎますが、子クラスで親クラスのメソッドを上書き(オーバーライド)して別の処理に変更することができます。
PHPで親クラスのメソッドをオーバーライドするには、子クラスにオーバーライドしたいメソッドと同じ名前のメソッドを定義します。
メソッドのオーバーライド方法
//親クラス
class 親クラス名 {
function メソッド名() {
//親クラスのメソッドの処理
}
}
//子クラス
class 子クラス名 extends 親クラス名 {
function オーバーライドするメソッド名() {
//子クラスのメソッドの処理(処理の上書き)
}
}
オーバーライドしてメソッドを定義しても、子クラスでは親クラスのメソッドを実行することもできます。その場合には「parent::親クラスのメソッド名」のように指定します。
また、親クラスでオーバーライドされたくないメソッドがある場合には、メソッドにアクセス権の修飾子とは別に「
この記事は会員限定です。会員登録をすると続きをお読みいただけます。
ログイン / 新規登録