Override アトリビュートはじめにこのアトリビュートは、 親クラスのメソッドやプロパティをオーバーライドしている意図があるか、 インターフェイスで定義されたプロパティやメソッドを実装していることを示します。 親クラス中に同じ名前のメソッドやプロパティが存在しなかったり、 実装されているインターフェイスがない場合は、 コンパイル時にエラーが発生します。 シグネチャのチェックを回避できてしまうため、 このアトリビュートは __construct() に対しては使えません。 クラス概要
final
Override
/* メソッド */
public __construct()
変更履歴
例例1 メソッドと一緒に使う
上の例の PHP 8.3 での出力は、たとえば以下のようになります。: Fatal error: Extended::boo() has #[\Override] attribute, but no matching parent method exists 例2 プロパティと一緒に使う
上の例の PHP 8.5 での出力は、たとえば以下のようになります。: Fatal error: Extended::$boo has #[\Override] attribute, but no matching parent property exists 参考
|