[英]Accessing child property from Parent class in php
我來自java背景,最近在PHP中測試了一些OOP方法。 我發現父類允許使用Child類屬性。 下面的代碼描述了我想說的內容。
<?php
class ParentClass {
public static function test() {
echo "hello world ". implode(',', static::$prop);
}
}
class ChildClass extends ParentClass {
public static $prop = ['a' , 'b'];
}
ChildClass::test();
?>
在上面的代碼中,ParentClass使用函數test()
的$ prop變量。 這只是輸出而沒有錯誤。 但是,Java中不允許這樣做。 這種方法在PHP中背后的原因是什么?
Java沒有Late static bindings的概念:
“后期綁定”來自於以下事實:static ::不會使用定義方法的類來解析,而是使用運行時信息來計算。
如果你使用self::
你將擁有Java中所知的行為。 但是static::
在運行時解析。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.