php用this调用父类方法与parent调用父类方法有什么区别
展开全部
你的理解有误,this是一个伪变量。只能在本类中使用,this如果调用的是父类中相同的方法
例如
class Person {
function say() {
echo '你好';
}
}
class Boy extends Person {
function say() {
$this->say(); //这样还是调用了Boy类实例化对象的方法say,无限递归,死循环了
}
}
$obj = new Boy(); //实例化Boy类,$this才存在,不然的话,就是未定义的
$this->say();要换成parent::say();就是调用父类的方法
例如
class Person {
function say() {
echo '你好';
}
}
class Boy extends Person {
function say() {
$this->say(); //这样还是调用了Boy类实例化对象的方法say,无限递归,死循环了
}
}
$obj = new Boy(); //实例化Boy类,$this才存在,不然的话,就是未定义的
$this->say();要换成parent::say();就是调用父类的方法
追问
这是重载扩展原来方法的情况下,如果我只是在子类中单纯调用父类的另一个方法,有区别吗?
追答
这不就是单纯调用吗?有点不明白你的意思了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询