一、异常分类
Java 异常可以分为三类:受检查异常(checked exception)、运行时异常(runtime exception)和错误(error)。
受检查异常是在编译时就需要处理的异常,如果没有处理会导致编译错误。例如,IOException、ClassNotFoundException 等。
运行时异常是指不需要在编译时处理的异常,它们通常表示程序逻辑错误或输入错误。例如,NullPointerException、ArrayIndexOutOfBoundsException 等。
错误通常是指无法恢复的严重问题,例如 VirtualMachineError、OutOfMemoryError 等。与异常不同,程序无法通过捕获和处理错误来进行恢复。
二、异常具体场景
2.1.ClassNotFoundException
ClassNotFoundException一般在Java程序中出现,表示无法找到指定类。以下是一个ClassNotFoundException的例子:
假设我们在Java代码中使用了一个类库,但是这个类库没有被正确地添加到项目的类路径中,那么当我们在代码中引用这个类时,就会抛出ClassNotFoundException异常,因为编译器和JVM无法找到这个缺失的类。
例如,在以下代码中,我们尝试使用一个名为"com.example.MyClass"的类,但是这个类并没有被正确地添加到类路径中:
try {
Class.forName("com.example.MyClass");
} catch (ClassNotFoundException e) {
e.printStackTrace()