如何在 PHP 的子类中调用父构造函数?
在子类中调用父构造函数方法时,我们会遇到两种情况。
情况 1
如果子类定义了一个构造函数,我们无法直接在子类中运行父类的构造函数。为了运行父类构造函数,在子类构造函数中需要调用 parent::__construct() 。
示例
<?php
class grandpa{
public function __construct(){
echo "I am in Tutorials Point"."
";
}
}
class papa extends grandpa{
public function __construct(){
parent::__construct();
echo "I am not in Tutorials Point";
}
}
$obj = new papa();
?>Output: I am in Tutorials Point I am not in Tutorials Point
说明
在上面的示例中,我们使用了 parent::__construct() 来调用父类的构造函数。
情况 2
如果子类没有定义一个构造函数,它可以像普通类方法一样从父类继承(如果它不是被声明为私有方法)。
示例
<?php
class grandpa{
public function __construct(){
echo "I am in Tutorials point";
}
}
class papa extends grandpa{
}
$obj = new papa();
?>输出
I am in Tutorials point
说明
此处,父类被隐式调用,因为在子类中我们没有在子类中声明任何构造函数函数。
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP