捕获处理异常vs抛出异常

捕获异常,可以由程序员自行对出现的异常进行处理
抛出异常,程序运行过程中产生的异常递交给虚拟机,由虚拟机进行处理,异常的处理程序员无法干预
 
捕获处理异常案例:
package hh;

public class JavaThrows {
	public void calc(byte k)throws Exception{//抛出异常
		byte y=1,i=1;
		System.out.print(k+"!=");
		//求整数的阶乘,一旦计算后的数值大于某个值,则认为“溢出”
		for(i=1;i<=k;i++) {
			if(i*y>Byte.MAX_VALUE)
				throw new Exception(" 溢出");
			else
				y=(byte)(y*i);
		}
		System.out.println(y);
	}
	public void run(byte k) {//捕获并处理异常
		try {
			calc(k);
		}
		catch(Exception e) {
			System.out.println("异常:"+e.getMessage());
			e.printStackTrace();
			System.exit(0);
		}
	}
	public static void main(String args[]) {
		JavaThrows a=new JavaThrows();
		for(byte i=1;i<10;i++)
			a.run(i);
	}

}
运行截图如下:



阅读更多
文章标签: Java/异常
个人分类: Java
下一篇笔记本电脑更换固态硬盘教程(联想ThinkPadE455)
想对作者说点什么? 我来说一句

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

关闭
关闭