在抽象类中调用继承类中的execute()方法,直接用$this调用
//这是父类
<?php
abstract class Parentfile
{
public $firstname='';
public $lastname='';
public function _construct()
{}
public function query($str)
{
return $this->execute($str);
}
}
//这是子类,继承了Parenfile,有一个execute()方法
<?php
class Subfile extends Parentfile
{
public $name='';
public function __construct(){}
public function execute($str)
{
echo $str;
}
}
然后我们要怎么在父类中调用query()方法呢
<?php
//必须都包含进来,不然会找不到文件
require_once ('parentfile.php');
require_once ('subfile.php');
$test=new Subfile();
$str='这是测试调用抽象类中的query()方法,然后再方法中调用子类中的execute()方法';
//这里子类没有query()方法,他就会直接去父类查询query()方法
$test->query($str);
文章描述了一个PHP编程场景,其中父类`Parentfile`是一个抽象类,包含一个query()方法,该方法内部调用了`execute()`。子类`Subfile`继承了`Parentfile`并实现了`execute()`方法。当创建`Subfile`的对象并调用`query()`时,由于子类未定义此方法,所以会查找并执行父类中的query(),进而调用子类的`execute()`方法打印出给定的字符串。

被折叠的 条评论
为什么被折叠?



