我有
class P {
function fun() {
echo "P";
}
}
class Ch {
function fun() {
echo "Ch";
}
}
$x = new Ch();
如何从$ x调用父函数的乐趣?有可能直接做,或者我必须写:
function callParent {
parent::fun();
}
答案 0 :(得分:1)
简单...在子级中没有相同名称的方法,在这种情况下,子方法将继承父方法,并且调用$ x-> fun()将调用继承的方法方法
答案 1 :(得分:1)
假设您的代码实际上是这样的:
class P {
function fun() {
echo "P";
}
}
class Ch extends P {
function fun() {
echo "Ch";
}
function callParent{
parent::fun();
}
}
$x = new Ch();
你确实必须使用parent :: fun()来调用P :: fun。
如果您要覆盖必须调用的方法,以便正确初始化父类,这可能很有用。
像:
class Parent {
function init($params) {
// some mandatory code
}
}
class Child extends Parent {
function init($params) {
parent::init();
// some more code
}
}