异常概念&异常体系和异常分类

异常概念&异常体系

异常,就是不正常的意思。在程序执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。

在java等面向对象的编程语言中,异常本身是一个类,产生异常就是创建异常对象并抛出了一个异常对象。

Java处理异常的方式是中断处理

异常体系:

异常机制其实是帮助我们找到程序中的问题,异常的根类是Throwable,其下有两个子类:

Error与Exception,平常所说的异常值Exception。(Throwable是最顶层的类有两个子类Error和Exception)

Throwable体系:

  >Error:严重错误Error,无法通过处理的错误,只能事先避免,好比绝症。

  >Exception:表示异常,异常产生后程序员可以通过代码的方式纠正,使程序继续运行, 是必须要处理的。

printStackTrace():打印异常的详细信息。

  包含了异常的类型,异常的原因,还包括异常出现的位置,在开发和调式阶段,都得使用printStackTrace。

getNessage():获取发生异常的原因。

  提示给用户的时候,就提示错误原因。

toString() : 获取异常的类型和异常描述信息(不用)。

 

异常分类

java.lang.Throwable:类是Java语言中所有错误或异常的超类。

  Exception:编译期异常,进行编译(写代码)java程序出现的问题

    RuntimeException:运行期异常,java程序运行过程中出现的问题

    异常就相当于程序得到了一个小毛病(感冒, 发烧),把异常处理掉,程序可以继续执行

  Error:错误

    错误就相当于程序得到了一个无法治愈的毛病,必须修改源代码,程序才能继续执行

给虚拟机处理异常,中断处理

    public static void main(String[] args) throws ParseException {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        Date date = sdf.parse("1999-0909");
        System.out.println(date);
    }

 

 编译异常把异常处理后,后续代码可以继续执行

    public static void main(String[] args) /*throws ParseException*/ {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        Date date = null;
        try {
            date = sdf.parse("1999-0909");
        } catch (ParseException e) {
            e.printStackTrace();
        }
        System.out.println(date);
        System.out.println("==das==");
    }

 

 运行期间异常

int[] arr={1,2,3};
System.out.println(arr[3]);

 

 进行处理

    public static void main(String[] args){
        int[] arr = new int[]{1,2,3};
        try {
            System.out.println(arr[3]);
        } catch (Exception e) {
            System.out.println(e);
        }
        System.out.println("==...==");
    }

 

 Error错误

 

内存溢出错误,创建的数组太大,超出给JVM分配的内存 

 

 

 

 

posted @ 2022-07-07 17:04  魔光领域  阅读(114)  评论(0编辑  收藏  举报