php - 重写 PHP 中的方法?

标签 php oop overriding implements

在 Java 等其他 OO 语言中,我们可以覆盖函数,可能使用关键字/注释,如 implements@override 等。

有没有办法在 PHP 中这样做?我的意思是,例如:

class myClass {
    public static function reImplmentThis() { //this method should be overriden by user
    }
}

我希望用户实现他们自己的 myClass::reImplementThis() 方法。

我如何在 PHP 中做到这一点?如果可能,我可以将其设为可选吗?

我的意思是,如果用户没有实现该方法,我可以指定一个默认方法,还是可以确定该方法未定义(我可以使用 method_exists 来做到这一点)吗?

最佳答案

<?php
abstract class Test
{
    abstract protected function test();

    protected function anotherTest() {

    }
}

class TestTest extends Test
{
    protected function test() {

    }
}

$test = new TestTest();
?>

这样类 TestTest 必须覆盖函数测试。

关于php - 重写 PHP 中的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13893749/

相关文章:

php - Symfony2 中 $em->clear() 的未定义索引错误

oop - 为什么我应该重载一个过程?为什么不添加过程名称?

c++ - 在 C++ 中为两个参数使用 const 覆盖运算符

java - 在 Java 中重写泛型类的方法时返回类型不兼容

css - Material UI Styled() - 如何设置子组件的样式

php - ctype_alnum 对抗 SQL 注入(inject)

Javascript 函数在通过 PHP require 获取的网站部分中不起作用

php - 我应该指挥什么对象?

c++ - 重载构造函数中的代码重复

java - 阻止某些对象添加到 ArrayList