Java常见异常及处理方法
发布人:shili8
发布时间:2025-01-13 11:08
阅读次数:0
**Java 常见异常及处理方法**
在 Java 编程中,异常是程序执行过程中的错误或未预期的事件。这些异常可以分为两大类:编译时异常(Checked Exception)和运行时异常(Unchecked Exception)。本文将介绍 Java 中常见的异常类型及其处理方法。
###1. NullPointerExceptionNullPointerException 是一种常见的异常,表示尝试访问或操作空引用(null)的情况。例如:
javapublic class Test { public static void main(String[] args) { String str = null; System.out.println(str.length()); // NullPointerException } }
处理方法:在使用对象之前,先检查其是否为 null。
###2. ArrayIndexOutOfBoundsExceptionArrayIndexOutOfBoundsException 表示数组索引超出范围的情况。例如:
javapublic class Test { public static void main(String[] args) { int[] arr = new int[5]; System.out.println(arr[10]); // ArrayIndexOutOfBoundsException } }
处理方法:检查索引是否在合法范围内。
###3. ClassCastExceptionClassCastException 表示尝试将一个类的对象转换为另一个类的对象的情况。例如:
javapublic class Test { public static void main(String[] args) { Object obj = new String("Hello"); System.out.println((Integer) obj); // ClassCastException } }
处理方法:检查目标类型是否与源类型一致。
###4. ArithmeticExceptionArithmeticException 表示算术运算异常的情况。例如:
javapublic class Test { public static void main(String[] args) { int x =10; int y =0; System.out.println(x / y); // ArithmeticException } }
处理方法:检查除数是否为零。
###5. StringIndexOutOfBoundsExceptionStringIndexOutOfBoundsException 表示字符串索引超出范围的情况。例如:
javapublic class Test { public static void main(String[] args) { String str = "Hello"; System.out.println(str.charAt(10)); // StringIndexOutOfBoundsException } }
处理方法:检查索引是否在合法范围内。
###6. NumberFormatExceptionNumberFormatException 表示尝试将字符串转换为数字类型的情况。例如:
javapublic class Test { public static void main(String[] args) { String str = "abc"; System.out.println(Integer.parseInt(str)); // NumberFormatException } }
处理方法:检查字符串是否符合数字格式。
###7. IOExceptionIOException 表示输入/输出操作异常的情况。例如:
javapublic class Test { public static void main(String[] args) throws IOException { FileInputStream fis = new FileInputStream("file.txt"); // ... } }
处理方法:使用 try-catch 块捕获 IOException。
###8. SQLExceptionSQLException 表示数据库操作异常的情况。例如:
javapublic class Test { public static void main(String[] args) throws SQLException { Connection conn = DriverManager.getConnection("url", "username", "password"); // ... } }
处理方法:使用 try-catch 块捕获 SQLException。
###9. InterruptedExceptionInterruptedException 表示线程被中断的情况。例如:
javapublic class Test implements Runnable { public void run() { while (true) { System.out.println("Hello"); Thread.sleep(1000); } } public static void main(String[] args) throws InterruptedException { Thread thread = new Thread(new Test()); thread.start(); // ... } }
处理方法:使用 try-catch 块捕获 InterruptedException。
### 总结Java 中的异常是程序执行过程中的错误或未预期的事件。这些异常可以分为两大类:编译时异常(Checked Exception)和运行时异常(Unchecked Exception)。本文介绍了 Java 常见的异常类型及其处理方法,包括 NullPointerException、ArrayIndexOutOfBoundsException、ClassCastException 等。通过了解这些异常的定义和处理方法,可以更好地编写高质量的 Java代码。