我知道RuntimeException也可捕获,但是我是说如果既不用try catch捕获,定义方法时也不用throws抛出,那么这个runtimeException是怎么处理的?比如下面的例子:class MyRuntimenException extends RuntimeExcepion { public MyRuntimenException() { super(); } public MyRuntimenException(String msg) { super(msg); } }class Test { public void test { throw new MyRuntimenException (); }}像test方法里出现了这个运行时异常,系统是如何处理的?
...
}catch(){
...
}还是一样捕获,不过就是捕获RuntimeException或者直接Exception再或者RuntimeException的子类
一类将异常的处理递交给当前方法的调用者去处理,称为 throws a Exception,
另一类则在方法中使用try/catch/finally语句自己处理异常。
这个要看需求的,因为runtime的exception本来就是不可预知的,不可能因为有这种可能,就每个都来个try catch如果是web的,配个500的页面,出错时自动转到那个告诉用户系统出错,联系管理员的那个页面就是一种解决方案,不会把无意义的exception直接暴露给用户又比如一些小的j2se的工具,其实直接抛exception给用户也无所谓,用户一看就知道出什么错了,比如文件路径,网络连接之类的
public MyRuntimenException() {
super();
}
public MyRuntimenException(String msg) {
super(msg);
} }class Test {
public void test {
throw new MyRuntimenException (); }}像test方法里出现了这个运行时异常,系统是如何处理的?