今天我已经读过一个问题,最终版本,最终版本和最终版本之间有什么区别?
Final是一个关键字。最后是一个块
最终关键字
变量 - 如果您将任何变量设为最终变量,则无法更改最终变量的值(它将是常量)。
方法 - 如果您将任何方法设为最终方法,则无法覆盖它
班级 - 如果您将任何课程作为最终成绩,则无法将其扩展为
最后阻止
finally块中的代码将始终在try和catch块之后执行,无论是否抛出异常,并且在正常执行恢复之前。
什么是最终确定,是否可以使用PHP?如果是,那么如何?
答案 0 :(得分:1)
Finalize是一个对象方法,它包含在垃圾回收之前释放非托管资源并执行清理操作所需的代码。
在Java中,当垃圾收集确定不再有对该对象的引用时,对象上的垃圾收集器会调用java.lang.Object.finalize()
。子类重写finalize
方法以处置系统资源或执行其他清理。
PHP不包含finalize()
方法。相反,如果在GC收集对象时需要从内存中释放资源或连接,则可以使用__destruct
魔术方法。具体来说,来自文档:
PHP 5引入了类似于其他概念的析构函数概念 面向对象的语言,例如C ++。析构函数方法将是 只要没有其他特定参考,就会调用 对象,或在关机序列期间的任何顺序。
值得注意的是,使用PHP(例如,与Java中的finalize
方法不同)在析构函数中抛出新异常会导致问题:
尝试从析构函数中抛出异常(在时间中调用) 脚本终止)导致致命错误。