ホームページ >バックエンド開発 >PHPチュートリアル >PHP 子クラス メソッドの継承時に「厳密な標準」エラーが発生するのはなぜですか?

PHP 子クラス メソッドの継承時に「厳密な標準」エラーが発生するのはなぜですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-07 11:43:14177ブラウズ

Why Does My PHP Child Class Method Get a

PHP でのメソッド宣言の互換性

親クラスからメソッドを継承する場合、子クラスの宣言が次のとおりであることを確認することが重要です。親メソッドと互換性があります。エラー メッセージ「厳密な標準: childClass::customMethod() の宣言は、parentClass::customMethod() の宣言と互換性がある必要があります。」は、親クラスと子クラスのメソッド シグネチャの間に不一致があることを示しています。

エラーの考えられる原因:

この一般的な理由は次のとおりです。エラー:

  • 引数の違い: 子メソッドの引数の数または型が親メソッドとは異なります。
  • 変更されたアクセス レベル: 子メソッドは親とは異なるアクセス レベル (パブリック、プライベート、保護など) を持っていますmethod.

互換性の確保:

エラーを解決するには、次の方法で子メソッドの宣言が親メソッドと互換性があることを確認する必要があります。

  • 引数の一致: 子メソッドには同じものが必要です親メソッドとしての引数の数と型。
  • アクセス レベルの維持: 子メソッドには、親メソッドと同じか、それよりも厳しいアクセス レベルが必要です。

追加情報:

PHP のメソッドの互換性に関するドキュメントは次の場所にあります。ソース:

  • [PHP マニュアル: メソッドのオーバーライド](https://www.php.net/manual/en/ language.oop5.overriding.php)
  • [PHP [継承](https://www.tutorialrepublic.com/php-tutorial/php-inheritance.php)

メソッド宣言の互換性を検証することで、「厳密な標準」エラーを回避し、 PHP コード内で適切な継承とメソッドのオーバーライドを確保してください。

以上がPHP 子クラス メソッドの継承時に「厳密な標準」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。