美文网首页
异常基本概念及处理异常

异常基本概念及处理异常

作者: 牛倩贱 | 来源:发表于2019-03-24 11:22 被阅读0次

    异常:

        在java中还提供了大量的异常类,这些类都是继承自java.long.Throwable类。

                                        Throwable类的继承体系

    异常基本概念及处理异常

    Error类称为错误类,他表示java运行时产生的系统内部错误或资源耗尽的错误,是比较严重的,靠程序本身是不能恢复执行的。

    Exception类称为异常类,他表示程序本身可以处理的错误,在开发java程序中进行的异常处理都是针对Exception类及其子类。在Exception类众多的子类中,有一个特殊的RuntimeException类,该类及其子类表示运行时异常,除了此类,Exception类下所有的子类都用于表示编译异常。

        try...catch..和finally

    try..catch:异常捕获

            程序运行时,由于发生异常,程序立即终止,无法继续进行执行,为了解决这类中问题java提供了一种对异常进行处理的方式—异常捕获

                try {

                    //程序代码块

                } catch (ExceptionType(Exception类及其子类)e){

                     //对ExceptionType的处理代码

                }

    注意:catch代码块需要一个参数标明它能够接收的异常类型,这个参数的类型必须是Exception类及其子类。

        在try代码块中,发生异常的语句后面的代码是不会执行的,所以我们希望有些语句后的代码是否发生异常都要执行的,这样就可以在tyr...catch语句后加一个finally代码块。这样就可以在程序发生异常还是return语句结束后,后面的语句因为在finally代码块中,所以一定会被执行。finally代码块中的语句只有在一种情况下是不会执行的,那就是在try...catch后使用了System.exit(o)语句。

            System.exit(0)表示退出java虚拟机,java虚拟机停止了,任何的代码就都不能执行了。

    throws关键字

        throws关键字需要写在方法声明的后面,throws后面需要声明方法中发生异常的类型,通常将这种做法称为方法声明抛出一个异常。但是如果定义方法的时候声明了抛出异常。调用者就必须在使用这个方法时进行处理,否则就会发生编译错误。

            作用:当不知道方法是否会有异常时,便使用throws关键字对外声明该方法有可能发生异常,提醒别人在调用方法时对异常进行处理。

    运行时异常与编译时异常

     1.编译时异常:Exception类除了RuntimeException类及其子类都是编译时异常。

            特点:java编译器会对其进行检查,如果出现异常就必须对异常进行处理,否则程序就无法通过编译。

    处理方式:a.使用try...catch语句对异常进行捕获;b.使用throws关键字声明抛出异常,调用者对其进行处理。

    2.运行时异常

            RuntimeException类及其子类都是运行时异常。

            特点:java编译器不会对其进行检查,即就是当程序中出现这类异常时,即便没有使用try..catch语句捕获或使用throws声明抛出,程序也能编译通过。

            运行时间异常一般是由程序的逻辑错误引起的,在程序运行时无法恢复。

    3.自定义异常

        自定义异常类必须是继承自Exception类或其子类。

    相关文章

      网友评论

          本文标题:异常基本概念及处理异常

          本文链接:https://www.haomeiwen.com/subject/kejeuqtx.html