如果現在我對ststic有點了解現在我意識到我什麼都不懂。我很困惑,我很難理解,我不能。有人可以解釋這個程序,當使用自我,父母,靜態和如何 我做的所有最小的變化改變結果沒有我無法理解發生了什麼事情。 非常感謝..什麼時候使用self,parent,static和how?
代碼從http://docs.php.net/language.oop5.late-static-bindings
<?php
class A {
public static function foo() {
static::who();
}
public static function who() {
echo __CLASS__."\n";
}
}
class B extends A {
public static function test() {
A::foo();
parent::foo();
self::foo();
}
public static function who() {
echo __CLASS__."\n";
}
}
class C extends B {
public static function who() {
echo __CLASS__."\n";
}
}
C::test();
?>
的出放爲:
A
C
C
謝謝更多瞭解 –
奇怪!我會認爲遲到的版本會是默認的,也就是說爲什麼我的子類會麻煩地定義一個方法,然後默認調用父版本?但我不記得任何有關PHP標準與我所預期的一樣的場合。 – jsh
有人可以解釋更多。並解釋 – Rafael