try-catch语句

Java的“异常”处理是通过try、catch、throw、throws和finally5个关键字来实现的。

把有可能引发异常的代码放进一个try块中,try块后面应包含一个或多个catch子句来指定用户想要捕捉的“异常”的类型。

import java.util.Random;
public class TestException {
	public static void main(String[] args) {
		int a=0,b=0,c=0;
		Random r=new Random();
		for (int i = 0; i < 5; i++) {
			
			try {
				b=r.nextInt();
				c=r.nextInt();
				a=12345/(b/c);
			} catch (ArithmeticException e) {
				a=0;
				System.out.println("除数不能为0");
			}
			System.out.println(a);
		}
	}
}

        在for循环中,通过java.util.Random类的对象调用方法nextInt()得到两个随机整数,这两个整数分别被对方除,结果用来除12345,最后的结果放在变量a中。如果某一次循环的一个除法操作导致被零除异常,它将被捕获,在对应的catch块中将a的值设为零,程序继续运行,因此执行其后的输出操作。

        如果一个子程序不能处理某个“异常”,则返回上一级进行处理;如果上一级也无法处理,则断续向上返回,直到返回最外一级为止。

一个try及其catch语句组成了一个单元,catch子句的范围限制于try语句前面定义的语句,一个catch语句不能捕获另一个try声明所引发的异常(除非是嵌套的try语句)。被try保护的语句声明必须在一个大括号内,不能单独使用try。

在使用多个catch语句时,catch语句的排列顺序应该是先特殊后一般,也就是子类在父类前面(如果子类在父类后面,子类永远不会到达)


展开阅读全文

没有更多推荐了,返回首页