java Exception体系结构

        java 异常是程序运行过程中出现的错误。Java把异常当作对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类(父类)。在JavaAPI中定义了许多异常类,分为两大类,错误Error和异常Exception。其中异常类Exception又分为运行时异常(RuntimeException)和非运行时异常(非runtimeException),也称之为不检查异常(Unchecked Exception)和检查异常(CheckedException)。

 

1、  Error与Exception

        Error是程序无法处理的错误,比如OutOfMemoryError、ThreadDeath等。这些异常发生时,Java虚拟机(JVM)一般会选择线程终止。

        Exception是程序本身可以处理的异常,这种异常分两大类运行时异常和非运行时异常。程序中应当尽可能去处理这些异常。

 

2、  运行时异常和非运行时异常

       a)        运行时异常: 都是RuntimeException类及其子类异常:

                      i.             IndexOutOfBoundsException 索引越界异常

                      ii.             ArithmeticException:数学计算异常

                     iii.             NullPointerException:空指针异常

                     iv.             ArrayOutOfBoundsException:数组索引越界异常

                      v.             ClassNotFoundException:类文件未找到异常

                     vi.             ClassCastException:造型异常(类型转换异常)

                           

         这些异常是不检查异常(Unchecked Exception),程序中可以选择捕获处理,也可以不处理。这些异常一般是由程序逻辑错误引起的。

 

非运行时异常:是RuntimeException以外的异常,类型上都属于Exception类及其子类。从程序语法角度讲是必须进行处理的异常,如果不处理,程序就不能编译通过。如:

          IOException、文件读写异常

          FileNotFoundException:文件未找到异常

          EOFException:读写文件尾异常

          MalformedURLException:URL格式错误异常

          SocketException:Socket异常

          SQLException:SQL数据库异常

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值