国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

一文徹底搞懂php的后期靜態綁定舉例講解

瀏覽:4日期:2022-06-13 18:45:40
目錄舉個例子說明結語舉個例子說明

看了很多人的解釋,都是照搬文檔,說得非常抽象。

這里我舉個例子說明一下,應該很多人能秒懂。

<?php interface FactoryInterface{ public function create();}abstract class Factory implements FactoryInterface{ public static $instance = null; public function create() {throw new \Exception('Please implement create method.'); } public static function getInstance() {if (is_null(self::$instance)) { self::$instance = new static();}return self::$instance; }}class Car{ public function run() {echo 'I'm running'; }}class CarFactory extends Factory{ public function create() {return new Car(); }}CarFactory::getInstance()->create()->run();

上面這個抽象類的getInstance靜態方法中,我想實例化一個子類,怎么辦?除了new static, 沒有別的方法,因為你根本不知道子類的名稱到底是什么,它可以被命名成任意合法的名稱。還有其它場景,比如說在父類的靜態方法中調用子類的靜態方法,怎么辦?也是一樣static::childMethod()

結語

結合上面的例子和你自己的感悟,再去讀一讀文檔中的說明,是不是清晰了很多?

以上就是一文徹底搞懂php的后期靜態綁定舉例講解的詳細內容,更多關于php后期靜態綁定的資料請關注好吧啦網其它相關文章!

標簽: PHP
相關文章:
主站蜘蛛池模板: 临夏市| 邳州市| 浙江省| 北辰区| 望城县| 郎溪县| 黑龙江省| 芜湖县| 亚东县| 德江县| 延边| 江都市| 灵石县| 彰化县| 洪洞县| 青铜峡市| 拜泉县| 苏尼特左旗| 屏东县| 安平县| 扎兰屯市| 确山县| 斗六市| 苗栗县| 彰武县| 辽中县| 镇远县| 墨玉县| 扎兰屯市| 兴国县| 三亚市| 布拖县| 桐梓县| 且末县| 阿拉善右旗| 图片| 称多县| 威宁| 南康市| 正定县| 陈巴尔虎旗|