抛出异常
在函数上通过throws声明异常,提高安全性,让调用者进行处理,否则编译失败。
调用者可继续抛出异常,或try处理问题。
声明异常时,要声明更为具体的异常,使处理可以更具体。
声明几个异常,就对应几个catch块,不要定义多余的catch块。多个catch块中异常若出现了继承
关系,父类异常catch块放在最下面。
- int div(int a,int b)throws Exception//在函数上通过throws关键字声明该功能可能有问题,由调用者进行处理。
- //throws 异常1,异常2 :声明多个异常
- {
- return a/b;
- }
- }
- class ExceptionDemo
- {
- public static void main(String[] args)//调用者throws Exception继续抛出问题或通过try处理问题
- {
- Demo d = new Demo();
- //使用try格式处理问题
- try
- {
- int x = d.div(4,0);
- System.out.pritln("x="+x);
- }
- catch (Exception e)//Exception e = new ArithmeticException();
- {
- //多态,父类方法调用子类对象覆写
- System.out.pritln(e.toString());//对捕获异常对象调用方法处理
- System.out.pritln("除零了");
- }
- //catch (异常1){}分别具体处理声明的异常
- //catch (异常2){}
- System.out.pritln("over");
-
- }
- }
复制代码 |