捕获异常,可以由程序员自行对出现的异常进行处理
抛出异常,程序运行过程中产生的异常递交给虚拟机,由虚拟机进行处理,异常的处理程序员无法干预
 
捕获处理异常案例:
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);
	}

}
运行截图如下:



Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐