gpt4 book ai didi

php - 在 PHP 中子类的构造函数中必须调用 parent::__construct 吗?

转载 作者:可可西里 更新时间:2023-11-01 13:39:51 31 4
gpt4 key购买 nike

子类构造函数中的构造函数是否必须调用父类的构造函数?

为了解释,请考虑以下示例:

class Parent{

function __construct(){
//something is done here.
}

}

class Child extends Parent{

function __construct(){
parent::__construct();
//do something here.
}

}

像上面那样做是很正常的。但是请考虑类 Child 的以下构造函数:

function __construct(){
//Do something here
parent::__construct();
}

上面的代码是否正确?我们可以在你调用父级的构造函数之前做点什么吗?另外,如果我们不像下面这样在子构造函数中调用父构造函数是否合法?

class Child extends Parent{

function __construct(){
//do something here.
}

}

我是JAVA的,我展示的构造函数类型在Java中是不可能的。但是这些可以用 PHP 完成吗?

最佳答案

Is it mandatory?

没有

Is the above code correct?

Can we do something before you call the parent's constructor?

是的。您可以按任何顺序执行。

Also if we do not call the parent's constructor in the child's constructor like below is it legal?

是的。但它也不是隐含的。如果子构造函数不调用父构造函数,那么它将永远不会被调用,因为子构造函数会覆盖父构造函数。如果您的 child 没有构造函数,那么将使用父构造函数

关于php - 在 PHP 中子类的构造函数中必须调用 parent::__construct 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40244181/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com