PHP的方法重写

在面向对象编程的上下文中,方法重写是指替换子类中的父方法。在重写中,我们可以在子类中重新声明父类方法。 因此,基本上,重写的目的是更改父类方法的行为。

当您的类具有某个方法而另一个类(派生类)想要具有不同行为的相同方法时,则使用覆盖可以完全改变基类(或父类)的行为。 具有相同名称和相同参数的两个方法称为覆盖。

PHP中,覆盖上下文并不是那么困难。 众所周知,PHP中的重写是一种将继承的方法从父类更新为子类的方法。 因此,在这种情况下,您将需要在父类以及子类中使用具有相同名称的方法,然后我们将了解当子类覆盖父类的方法时父类方法的行为如何更改。

在OOP PHP中,如果我们要在子类中创建一个与其父类名称相同,参数数量相同且访问说明符相同的方法,那么我们可以说我们正在进行方法重写。 例如:

 类ParentClass { 
公共功能测试($ param){
返回“ \ n父级-参数值为$ param”;
}
}
class ChildClass扩展ParentClass {
公共功能测试($ param){
echo“ \ n子级-参数值为$ param”;
}
}
$ objParentClass =新的ParentClass;
$ objChildClass =新的ChildClass;
$ objParentClass-> test('class ParentClass');
$ objChildClass-> test('class ChildClass');

多态性的定义是:“如果通过在运行时检查对象来决定调用某个方法,那么这就是多态性的一种情况”。 我们可以在示例中应用此规则。 通过检查正在调用该方法的有关对象来确定是调用ParentClass类的方法test()还是ChildClass类的方法。 因此,方法调用将基于对象。