首頁 > 後端開發 > php教程 > 為什麼 PHP 會拋出「嚴格標準:childClass::customMethod() 的聲明應與 ParentClass::customMethod() 的聲明相容」?

為什麼 PHP 會拋出「嚴格標準:childClass::customMethod() 的聲明應與 ParentClass::customMethod() 的聲明相容」?

Linda Hamilton
發布: 2024-12-09 21:40:15
原創
399 人瀏覽過

Why Does PHP Throw

PHP 方法聲明中的相容性

在 PHP 中,錯誤「嚴格標準:childClass::customMethod()的聲明應該與「parentClass::customMethod()」表示子類別與其父類別中的方法宣告之間存在差異

可能原因:

當子方法有下列任一情況時,會發生錯誤:

  • 不同的參數:方法參數的數量、順序或資料類型應與父方法的參數相符
  • 不同的存取等級:子方法的存取等級(公用、私有或受保護)必須與父方法的存取等級相同或限制更少。 >

尋找相容性資訊:

PHP使用以下規則來定義方法相容性:

  • 參數:參數宣告的數量和類型必須相符。子方法存取可以限制性更大(例如,公共對私人),但限制性不能較小(例如,私人對私人) public)。附加文件和有關方法相容性的範例可以在以下PHP手冊頁中找到:
  • [重載與繼承](https://www.php.net/manual/en/language.oop5.overloading.php)[方法可見度](https://www.php.net/manual/en/ language.oop5.visibility.php)
  • [協方差與逆變](https://www.php.net/manual/en/language.oop5.variance.php)

以上是為什麼 PHP 會拋出「嚴格標準:childClass::customMethod() 的聲明應與 ParentClass::customMethod() 的聲明相容」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板