抓住扔掉的最佳做法是什么?如果捕获throwable,它会捕获内存等异常吗?
答案 0 :(得分:0)
捕获Throwable
异常的唯一方法与捕获异常的方法相同。它是如何工作的,它通过层次结构树捕获异常/错误。
因此,如果你想抓住OutOfMemory
错误,你有一些选择:
try{
}catch(java.lang.OutOfMemoryError t){
}
try{
}catch(java.lang.Error t){
}
try{
}catch(java.lang.Throwable t){
}
只需检查文档中的类树,找出您想要捕获的异常。 http://docs.oracle.com/javase/6/docs/api/java/lang/OutOfMemoryError.html
另外一个好的做法是你的catch块总是从树的底部开始,所以例如:
try{
//
}catch(java.lang.OutOfMemoryError t){
// handle out of memory error
}catch(java.lang.Throwable t){
// handle other throwable
}
还记得Error和Exception它们都扩展了Throwable,但是它们没有相互扩展,因此它们都是类树中的兄弟。