Java try和catch的使用
为防止和处理一个运行时错误,使用只需要把你所要监控的使用代码放进一个try块就可以了。紧跟着try块的使用,包括一个说明你希望捕获的使用错误类型的catch子句。完成这个任务很简单,使用下面的使用程序包含一个处理因为被零除而产生的ArithmeticException 异常的try块和一个catch子句。
注意在try块中的使用对println( )的调用是永远不会执行的。一旦异常被引发,使用程序控制由try块转到catch块。使用执行永远不会从catch块“返回”到try块。使用因此,使用“This will not be 使用printed。”
将不会被显示。使用一旦执行了catch语句,服务器租用使用程序控制从整个try/catch机制的使用下面一行继续。
一个try和它的catch语句形成了一个单元。catch子句的范围限制于try语句前面所定义的语句。一个catch语句不能捕获另一个try声明所引发的异常(除非是嵌套的try语句情况)。
被try保护的语句声明必须在一个大括号之内(也就是说,它们必须在一个块中)。你不能单独使用try。
构造catch子句的目的是解决异常情况并且像错误没有发生一样继续运行。例如,下面的程序中,每一个for循环的服务器托管反复得到两个随机整数。这两个整数分别被对方除,结果用来除12345。最后的结果存在a中。如果一个除法操作导致被零除错误,它将被捕获,a的值设为零,程序继续运行。
显示一个异常的描述
Throwable重载toString( )方法(由Object定义),所以它返回一个包含异常描述的字符串。你可以通过在println( )中传给异常一个参数来显示该异常的描述。例如,前面程序的catch块可以被重写成
当这个版本代替原程序中的版本,程序在标准javaJDK解释器下运行,每一个被零除错误显示下面的消息:
Exception: java.lang.ArithmeticException: / by zero
http://shenzhen.offcn.com/