Java中的常见异常:深入了解10种常见异常及其场景
Java中的常见异常:深入了解10种常见异常及其场景
Java 异常是程序运行过程中出现的错误,它会中断程序的正常执行。处理异常是 Java 开发者必须掌握的一项基本技能。本文将深入探讨 Java 中 10 种常见的异常类型,并提供详细的解释和代码示例,帮助开发者理解异常的原理、常见场景以及如何处理异常。
1. NullPointerException (空指针异常)
当一个对象引用为 'null' 时,调用该对象的方法或访问该对象的属性时会抛出 NullPointerException 异常。
String str = null;
System.out.println(str.length()); // 抛出 NullPointerException
2. ArrayIndexOutOfBoundsException (数组越界异常)
当访问数组的索引超出数组范围时,会抛出 ArrayIndexOutOfBoundsException 异常。
int[] arr = {1, 2, 3};
System.out.println(arr[3]); // 抛出 ArrayIndexOutOfBoundsException
3. ClassCastException (类型转换异常)
当试图将一个对象强制转换为不兼容的类时,会抛出 ClassCastException 异常。
Object obj = new Integer(1);
String str = (String) obj; // 抛出 ClassCastException
4. IllegalArgumentException (非法参数异常)
当传递给方法的参数不合法时,会抛出 IllegalArgumentException 异常。
public static void printName(String name) {
if (name == null || name.isEmpty()) {
throw new IllegalArgumentException("Name cannot be null or empty.");
}
System.out.println(name);
}
printName(null); // 抛出 IllegalArgumentException
5. NumberFormatException (数字格式异常)
当字符串无法转换为数字类型时,会抛出 NumberFormatException 异常。
int num = Integer.parseInt("abc"); // 抛出 NumberFormatException
6. FileNotFoundException (文件未找到异常)
当尝试打开一个不存在的文件时,会抛出 FileNotFoundException 异常。
File file = new File("nonexistent.txt");
Scanner scanner = new Scanner(file); // 抛出 FileNotFoundException
7. IOException (输入输出异常)
当发生输入输出异常,如读写文件失败时,会抛出 IOException 异常。
FileWriter writer = new FileWriter("output.txt");
writer.write("Hello world!");
writer.close(); // 假设写入文件失败,则会抛出 IOException
8. InterruptedException (线程中断异常)
当一个线程正在等待另一个线程执行某个操作时,如果被中断,则会抛出 InterruptedException 异常。
Thread.sleep(1000); // 抛出 InterruptedException
9. SQLException (数据库异常)
当对数据库进行操作时,如果发生错误,如连接断开、查询错误等,会抛出 SQLException 异常。
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase", "user", "password");
Statement stmt = conn.createStatement();
stmt.executeQuery("SELECT * FROM mytable"); // 假设查询失败,则会抛出 SQLException
10. UnsupportedOperationException (不支持的操作异常)
当不支持某个操作时,会抛出 UnsupportedOperationException 异常。
List<String> list = Collections.unmodifiableList(Arrays.asList("a", "b", "c"));
list.add("d"); // 抛出 UnsupportedOperationException
总结
本文介绍了 Java 中 10 种常见的异常类型,并提供了详细的解释和代码示例。开发者应该了解这些异常的原理、常见场景以及如何处理异常。在编写 Java 代码时,应该尽可能地处理可能发生的异常,提高代码的健壮性和可靠性。
原文地址: https://www.cveoy.top/t/topic/pZPG 著作权归作者所有。请勿转载和采集!