对java异常处理的一个测试实例




package 异常处理;
/*
 * 注意:如果在catch 语句中声明的异常类是Exception,catch
 *  语句也能正确地捕获,这是因为Exception 是ArithmeticExc
 *  -eption 的父类。如果不能确定会发生哪种情况的异常,那么
 *  最好指定catch的参数为Exception,即说明异常的类型为Exception。
 * 
 */
public class exception_exam {

	public static void main(String[] args) {
		System.out.println("这是一个异常处理的例子");
		try {
			int i=10;
			i /=0;
		}catch (ArithmeticException e) {
			System.out.println("异常是:"+e.getMessage());
		}
		finally {
			System.out.println("finally 语句被执行");
		}
	}
}

/*****************************************************************
******************************************************************
这是一个异常处理的例子
异常是:/ by zero
finally 语句被执行

******************************************************************
*****************************************************************/




package 异常处理;

public class exception_exam1 {

	public static void main(String[] args) {
		System.out.println("这是一个异常处理的例子\n");
		try {
			int i=10;
			i /=0;
		}
		catch (IndexOutOfBoundsException e) {
			System.out.println("异常是:"+e.getMessage());
		}
		finally {
			System.out.println("finally 语句被执行");
		}
		}
		
}
/***************************************************
 ********************程序运行:**********************
  这是一个异常处理的例子

Exception in thread "main" java.lang.ArithmeticException: / by zero
finally 语句被执行
	at 异常处理.exception_exam1.main(exception_exam1.java:9)
 * *************************************************
 */





package 异常处理;

public class exceptionTest {

	public static void main(String[] args) {
		
		int a,b;
		int c [] = {1,2,3};
		try{
			a = 10;
			b = 100 / a;
			System.out.println(" a 的当前值:" + a);
			c [3] = 200;
			
			System.out.println(" 当前数组的长度: " + c.length);
		}
		catch(ArithmeticException e){
			System.out.println(" 除零错误:" + e);
		}
		catch(ArrayIndexOutOfBoundsException e){
			System.out.println(" 数组下标越界:" + e);
		}
		finally{
			System.out.println("执行 finally 语句块");
		}
		System.out.println(" 程序顺利执行完毕!");

	}

}

/****************************************************
 *************正常情况下的执行效果********************
  a 的当前值:10
 当前数组的长度: 3
执行 finally 语句块
 程序顺利执行,无异常!
 
 ****************************************************
 ***************当 a =(10)----> (0)*****************
除零错误:java.lang.ArithmeticException: / by zero
执行 finally 语句块
 程序顺利执行完毕!

 ****************************************************
 ***************当c[2]-----> c[3]********************
  a 的当前值:10
 数组下标越界:java.lang.ArrayIndexOutOfBoundsException: 4
执行 finally 语句块
 程序顺利执行完毕!

 ****************************************************
 ***************************************************/






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值