あるクラスのメソッドは別のメソッドと同じ名前ですが、パラメータが異なります。このメソッドはオーバーロードされたメソッドと呼ばれます。
残念ながら、PHP は弱い型指定言語であるため、メソッド自体のパラメーターでさまざまな型のデータを受け取ることができ、PHP メソッドは無限の数のパラメーターを受け取ることができるため、PHP のロードでは厳密なメソッドの重複は発生しません。
PHP におけるオーバーロードとは、親クラスと同じ名前のメソッドをサブクラスに定義することを意味し、このメソッドはサブクラスの親クラスのメソッドをオーバーライドします。
サブクラスでは、親クラスから継承したメソッドがサブクラスで定義されたプロパティやメソッドにアクセスできない場合があるため、場合によってはオーバーロードが必要になります。
例:
リーリーこの例を実行すると、次のように出力されます:
リーリー親クラスがメソッドを定義するときにfinalキーワードを使用する場合、子クラスのメソッドによってオーバーライドすることはできません。
:: シンボルを通じて、親クラスのオーバーライドされたメソッドまたはメンバー プロパティにアクセスできます。 リーリー
スコープ解析演算子:: 使い方については「PHP 範囲解析演算子::」を参照してください。