java exception
java exception是什么呢?下面就让我们一起来了解一下吧:
java中的exception一般来说是代表异常,而异常也就是属于异常机制,异常机制指的是当程序出现了错误之后,程序需要如何处理。简单来说,就是异常机制提供了程序退出的安全通道,而当出现错误后,程序执行的流程就会发生改变,程序的控制权也会转移到异常处理器。
exception(即异常)一般也就是指程序本身能够处理的异常。在exception类中有一个重要的子类RuntimeException。RuntimeException类以及其子类所表示的是“JVM常用操作”引发的错误。
此外,exception(异常)通常可分为两大类,即运行时异常与非运行时异常(编译异常)。若是在运行过程中出现了应当尽可能地去处理这些异常。
运行时异常
都是属于RuntimeException类及其子类异常,比如NullPointerException(即空指针异常)、IndexOutOfBoundsException(即下标越界异常)等,这些异常是属于不检查异常,程序中能够选择捕获处理,也能不处理。
需要注意的是,这些异常通常是由于程序逻辑错误而导致的,程序应该要从逻辑角度尽可能的避免这类异常的发生。而运行时异常的特点就是Java编译器不会去检查它,也就是说,当程序中可能会出现这类异常时,即使是没有用try-catch语句捕获它,也没有使用throws子句声明抛出它,通常也是会直接编译通过的。
非运行时异常 (即编译异常)
这是属于RuntimeException以外的异常,其在类型上都属于exception类以及其子类。若是从程序语法角度来看,这是必须要进行处理的异常,若是不及时处理的话,程序就不能够编译通过。比如IOException、SQLException等及用户自定义的exception异常,正常情况下就会不自定义检查异常。
当然,在Java中的异常是可以分为可查的异常(即checked exceptions)与不可查的异常(即unchecked exceptions)的。
可查异常也就是编译器要求必须处置的异常,一般来说正确的程序在运行中时,是很容易出现的、可理解的异常状况。
而不可查异常也就是编译器不要求强制处置的异常,通常包括运行时的异常与错误。
一般来说,若需要处理这些异常会有专门的异常处理的机制,即在Java应用程序当中,其异常处理的机制通常是抛出异常、捕捉异常。
抛出异常
也就是当一个方法出现错误引发异常时,方法创建异常对象并且交付运行时系统,异常对象中还包含了异常类型与异常出现时的程序状态等异常信息。在运行时系统会负责寻找处置异常的代码并且执行。
捕获异常
也就是在方法抛出异常之后,运行时系统将会转为寻找合适的异常处理器,而潜在的异常处理器是属于异常发生时依次存留于调用栈中的方法的集合。当异常处理器所能够处理的异常类型与方法抛出的异常类型相符时,代表是属于合适的异常处理器。
运行时系统从发生异常的方法开始,会依次回查调用栈中的方法,直到能够找到含有合适异常处理器的方法并且执行,若是运行时系统遍历调用栈而并未找到合适的异常处理器,那么在运行时系统就会终止。
-
兰博基尼Huracán2020款2座落地价多少?Huracán指导价
Huracán2020款是一款兰博基尼旗下的跑车,其官方指导价为2540000元-3900000元。我们以Huracán的最低配2020款 EVO RWD为例,据了解,目前在南...
问答查看全文>> -
柴油发动机敲缸怎么修?
柴油发动机敲缸修理方法:1、柴油发动机敲缸的修理首先要知道敲缸的原因才能对应的修理,建议车主去维修店检查下先;2、发动机敲缸的常见原因;润滑油道堵塞;汽缸壁润滑不良;活塞方向装...
问答查看全文>> -
2019思域新款长宽高多少?
2019新款思域长宽高是4649*1800*1416(mm):1、外观方面,2019款本田思域提供两种外观造型,前脸进气格栅、外后视镜、BC柱和前包围下部进气口和轮圈均采用涂黑...
问答查看全文>> -
马自达cx5钥匙换电池教程是什么?
马自达cx5钥匙换电池教程是:1、轻扣钥匙背面的小开关,取出机械钥匙;2、使用小的一字螺丝刀沿着智能钥匙的缝隙慢慢撬开,撬开后即可看见钥匙的遥控装置;3、拆下旧电池,正极朝上插...
问答查看全文>>
推荐
- 1燃料电池汽车的优点是什么298
- 2丰田汉兰达火花塞多久更换?475
- 3学车手动挡和自动挡哪个学费贵224
- 4不惧失败的名言警句 英雄不惧失败的名言377
- 5一年级语文教学工作总结模板481
- 6中秋节简短祝福语 中秋简短祝福语句427
- 7感恩客户经典语录162
- 8震撼我妈是什么意思 震撼我妈是什么梗276