在Java中捕获内存不足错误(java.lang.OutOfMemoryError)有意义吗?
发布于 2011-03-23 18:43:02
是,。这里有几个可能有意义的例子:
如果你想通过优雅地关闭
,你甚至可以清除内存,
但是,请注意,通常情况下(除非您处于一次分配大量内存的位置),对于这些情况,您可能不会专门捕获OutOfMemoryError,而是在主入口点的顶部执行catch Throwable。
发布于 2011-03-23 18:45:30
金科玉律是只捕获你能处理的错误。如果你能在OutOfMemory错误后做一些有用的事情,那就继续吧。
发布于 2011-03-23 18:43:05
不,捕获Exception和RuntimeException,但几乎从不(从‘never’更改) Error
An Error是
Throwable的一个子类,它表示一个合理的应用程序不应该尝试捕获的严重问题。大多数这样的错误都是异常情况。虽然ThreadDeath错误是一种“正常”情况,但它也是Error的一个子类,因为大多数应用程序都不应该尝试捕获它。
备注:
我在这里引用了官方的Javadoc。如果你不同意,告诉甲骨文,不要射杀信使:-)
https://stackoverflow.com/questions/5403972
复制相似问题