reference: http://docs.php.net/manual/en/language.oop5.late-static-bindings.php
Note:
In non-static contexts, the called class will be the class of the object instance. Since $this-> will try to call private methods from the same scope, using static:: may give different results. Another difference is that static:: can only refer to static properties.
class Father{ public function __construct() { $this->init(); } private function init() { echo 'father' . PHP_EOL; }}class Son extends Father{ public function __construct() { parent::__construct(); $this->init(); } private function init() { echo 'son' . PHP_EOL; }}new Son();输出
fatherson
class Father{ public function __construct() { $this->init(); } private function init() { echo 'father' . PHP_EOL; }}class Son extends Father{ private function init() { echo 'son' . PHP_EOL; }}new Son();输出
father
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号