为了账号安全,请及时绑定邮箱和手机立即绑定

子类是否继承了魔术方法?

子类是否继承了魔术方法?

PHP
HUWWW 2022-06-11 09:30:26
如果我有一个名为:模型的父类class Model{    __construct(){        //do something    }    __destruct(){        //do something    }}和一些子类,如child1,child2 ...class child extends Model {    // some code}子类是否从父类继承魔术方法(__destruct,...)?
查看完整描述

1 回答

?
扬帆大鱼

TA贡献1799条经验 获得超9个赞

是的,它确实继承了父方法,直到您重载它们。但是当重载时,你可以通过 preceeding 来调用它们parent::。


class Model {

    public function __construct() {

        var_dump('From Model');

    }

}


class A extends Model {

}


class B extends Model {

    public function __construct() {

        var_dump('From B');

    }

}


class C extends Model {

    public function __construct() {

        parent::__construct();

        var_dump('From C');

    }

}


$m = new Model();

$a = new A();

$b = new B();

$c = new C();


结果来自$m = new Model();


string(10) "来自模型"


结果来自$a = new A();


string(10) "来自模型"


结果来自$b = new B();


字符串(6)“来自 B”


结果来自$c = new C();


string(10) "来自模型"


字符串(6)“来自 C”


查看完整回答
反对 回复 2022-06-11
  • 1 回答
  • 0 关注
  • 143 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号