php - 为什么 PHP 异常类中的所有方法都是最终的?

标签 php

我试图覆盖 getMessage() 来为返回消息提供默认值但失败了,因为 PHP Exception 类中的所有方法都是最终的。

现在我只是好奇为什么会这样。我知道我可以通过添加代理方法来解决这个问题。

最佳答案

它们是最终的,以确保它们在所有继承的中以完全相同的方式工作。程序员会期望 getMessage 以完全相同的方式为所有直接或从 Exception 传递继承的 class 工作。不过,您可以在构造函数中设置消息,因为您将能够为您的类编写自己的构造函数。

关于php - 为什么 PHP 异常类中的所有方法都是最终的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43064972/

相关文章:

PHP Yii2密码加密

php - 如何修复 Homebrew 的 "No available formula"警告

php - 如何在不使用自动加载的情况下使用 PHPMailer 创建邮件功能

php - 如何在单个字段 laravel 中存储多个值

php - 按天获取统计数据 - 日期时间列 - mysql/php

php - PHP(使用 Apache 或 Nginx)可以在 POST 请求完成之前检查 HTTP header 吗?

php - 带有位字段的 PDO 准备语句

php - 穿越到 php oop

php - 连接两个表时出现 "Message : Undefined Variable:query "错误 codeigniter mysql php

php - 将 KML 转换为 GeoJson