class a {
static public $prop = 'in a';
}
class b extends a {
}
a::$prop = 111;
b::$prop = 777;
print_r(a::$prop);
< /code>
Как вы думаете, что мы получаем? < /p>
a::prop = 777 (!!!)
Я знаю принципы позднего статического связывания, но может ли кто-нибудь указать
мне теорию, объясняющую такое поведение?
Вот пример кода. Протестировано в PHP 5.6, PHP 7.3. [code]class a { static public $prop = 'in a'; }
class b extends a {
}
a::$prop = 111; b::$prop = 777;
print_r(a::$prop); < /code> Как вы думаете, что мы получаем? < /p> a::prop = 777 (!!!) [/code] Я знаю принципы позднего статического связывания, но может ли кто-нибудь указать мне теорию, объясняющую такое поведение?
У меня есть некоторые интриализованные свойства /поля, которые являются «постоянными», и я хочу знать, какая из следующих строк самая лучшая в использовании:
public static Color MyColor { get { return Color.Red; } }
public static readonly...