Exception中有一个特殊的子类异常RuntimeException 运行时异常
如果在函数内容抛出该异常,函数上可以不用声明,编译一样通过。
如果在函数上声明了该异常,调用者可以不用进行处理,编译一样通过。
package test;
//ArithmeticException是RuntimeException的子类
class Demo {
int div(int a, int b) throws ArithmeticException {
if(b == 0)
throw new ArithmeticException("除数为0");
return a/b;
}
int div2(int a, int b) {
if(b == 0)
throw new ArithmeticException("除数为0");
return a/b;
}
}
public class Test {
public static void main(String[] args) {
Demo test = new Demo();
int x = test.div(4, 0);
int y = test.div2(4, 0);
System.out.println("x = " + x + " y = " + y);
}
}