java异常处理机制

来源:互联网 发布:大数据研究生专业 编辑:程序博客网 时间:2024/05/21 06:32
public class Test1 {//任意类型的throwable对象都可以抛出,它是异常类的根类//错误信息可以报错在异常对象的内部或者用异常类的名称来暗示//方法如果抛出异常或者调用的方法抛出异常,那么方法就会结束,为了不让方法结束,可以用try、catch来捕获异常,也就是说如果//调用的方法抛出了异常,这段代码必须被包裹在try语句块中来捕获可能发生的异常//jdk自带的方法中,某些敏感的方法都会抛出异常,我们最好的编程习惯就是将调用的语句放在try中。//多个catch子句,只有一个会匹配执行,然后结束//java支持的异常处理机制是终止型的,也就是异常一旦发生,表示严重的问题,不可恢复,捕捉处理,终止程序//对于异常来说,最重要的就是类名,用类名来表示这是某种特定的异常//编译时被强制检查的异常被称为被检查的异常//throwable包括error和exception exception含有特殊的runtimeexception 它们不需要编译器检查 被称为不受检查的异常//无需在 throws子句中进行声明//不需要程序员抛出,系统会自动抛出//finally经常做一些清理工作,尤其是内存之外的清理工作,当文件和网络连接打开后,一定要在抛出异常的情况下载finally子句中将其正常关闭//继承的时候 子类抛出的异常要么和父类一致,要么比父类级别低,不能比父类级别高,否则可能处理不了。无论这样,都要显示声明出来public static void main(String[] args) {try{throw new Exception();}catch(Exception e){System.out.println(e.getStackTrace()[0].getMethodName());}try {new B().fun();} catch (IOException | RuntimeException e) {e.printStackTrace();}}//RuntimeException}class A {      public void fun() throws IOException {                }  }  class B extends A {      public void fun() throws IOException, RuntimeException, ArithmeticException {                }  }  

0 0
原创粉丝点击