五种运行时候的异常
运行时异常(RuntimeException)是 Java 中一种特殊的异常,它们都是 Exception 的子类,并且不需要在程序中显式地进行捕获或声明抛出。运行时异常通常由程序的错误操作导致,例如逻辑错误或不正确的假设。下面是五种常见的运行时异常:
- NullPointerException
当试图访问或操作一个 null 对象的成员时抛出。例如,调用 null 对象的方法或访问 null 对象的字段时。 - ArrayIndexOutOfBoundsException
当尝试访问数组的非法索引时抛出,即索引值为负或大于等于数组大小时。 - ArithmeticException
在出现异常的算术条件下抛出,例如除以零。 - ClassCastException
尝试将对象强制转换为不是实例的子类时抛出。例如,试图将一个 String 类型的对象强制转换为 Integer 类型。 - IllegalArgumentException
当向方法传递非法或不适当的参数时抛出。这通常表明传递给方法的参数不符合该方法的预期。
点击查看代码
// NullPointerException
String str = null;
str.length(); // 试图调用null对象的方法
// ArrayIndexOutOfBoundsException
int[] nums = {1, 2, 3};
int value = nums[10]; // 访问不存在的数组索引
// ArithmeticException
int result = 10 / 0; // 尝试除以零
// ClassCastException
Object x = new Integer(0);
System.out.println((String)x); // 尝试将Integer对象强制转换为String
// IllegalArgumentException
Thread.sleep(-100); // 向方法传递非法参数
处理运行时异常通常涉及到修正代码中的错误,比如通过添加必要的检查来避免 NullPointerException,或者确保数组访问操作使用有效的索引等。虽然 Java 不要求在方法声明中使用 throws 关键字来指定运行时异常,或者在调用时显式捕获它们,合理地处理这些异常仍然是编写健壮程序的重要部分。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具