java, java中的Exception一般代表异常,异常属于异常机制。异常机制是指当错误发生时,程序需要如何处理。简单来说,就是异常机制为程序提供了一个安全的退出通道,当出现错误时,
程序执行的过程会改变,程序的控制权会转移到异常处理程序。
异常(即Exception)一般是指程序本身可以处理的异常。Exception类中有一个重要的子类RuntimeException。
RuntimeException类及其子类表示“JVM常见操作”导致的错误。
另外,异常通常可以分为两类,即运行时异常和非运行时异常(编译异常)。如果在操作过程中有任何异常,我们应该尽可能地处理它们。
运行时异常
都属于RuntimeException类及其子类,如NullPointerException(空指针异常)、IndexOutOfBoundsException(下标越界异常)等。
这些异常属于未检查异常,程序可以选择捕获和处理或者不捕获和处理。
需要注意的是,这些异常通常是由程序中的逻辑错误引起的,程序应该从逻辑的角度尽可能避免这样的异常。运行时异常的特点是Java编译器不会检查它,也就是说当这种异常可能出现在程序中时,
即使没有用try-catch语句捕捉,也没有用throws子句语句抛出,通常也会直接编译。
非运行时异常(即编译异常)
这是一个不同于RuntimeException的异常,它属于类型中的异常类及其子类。从程序语法的角度来看,这是一个必须处理的异常。如果不及时处理,程序将无法编译。
比如IOException、SQLException和自定义异常异常,一般情况下不会自定义检查异常。
当然,Java中的异常可以分为检查异常和未检查异常。
可检查异常是编译器要求处理的异常。一般来说,当正确的程序运行时,这是一个容易理解的异常。
不可检查的异常,即编译器不要求强制处理的异常,通常包括运行时异常和错误。
一般来说,如果需要处理这些异常,会有专门的异常处理机制,也就是在Java应用中,异常处理机制通常是抛出异常,捕捉异常。
抛出异常
也就是说,当方法中的错误导致异常时,方法会创建一个异常对象,并将其交付给运行时系统。异常对象还包含异常信息,如异常类型和异常发生时的程序状态。在运行时,系统将负责查找和执行处理异常的代码。
捕获异常
也就是说,方法抛出异常后,运行时系统会转向寻找合适的异常处理程序,潜在的异常处理程序属于异常发生时依次留在调用栈中的方法集合。当异常处理程序可以处理的异常类型与方法引发的异常类型一致时,
该代表属于适当的异常处理程序。
从带有异常的方法开始,运行时系统将依次检查调用堆栈中的方法,直到找到带有合适异常处理程序的方法并执行它。如果运行时系统遍历调用堆栈,并且没有找到合适的异常处理程序,运行时系统将终止。
java,以上就是本文为您收集整理的java最新内容,希望能帮到您!更多相关内容欢迎关注。