我正在使用 PHP 中的类。当我写一个类时,我总是在想“这个对象基本上是一次性的;它不会持续超过页面加载。” 因此,我的类中的所有逻辑基本上都是自己构建的,做一些状态更改,给出一些反馈,然后死掉。盐水虾。
正因为如此,我已经开始使用异常来抛出几乎所有的问题,因为如果出现问题,我将无法让用户与对象进行交互。相反,用户会在页面上获得一些关于发生了什么的反馈,然后他们重新提交表单或其他任何内容。无论如何,该对象将在几毫秒内死亡,我将无法获得更多输入来处理该错误。
在我看来,如果我在具有持久性对象的环境中编程,我可能会在对象的方法因异常终止之前做出更强大的警告、错误报告和处理。如果一个对象仍然处于错误或警告状态,我可以从用户那里获得更多输入并继续。所以我的对象看起来和行为会有所不同。
请注意,我要问的不是“PHP 中的对象与其他语言的行为有何不同?” 而是“在 PHP(或其他非持久性环境)中编写对象时,这些对象与能够持久化的对象有何不同?”