网站首页 > 技术文章 正文
ClassNotFoundException
很明显,这个错误是 找不到类异常,即在当前classpath路径下找不到这个类。
ClassNotFoundException继承了Exception,是必须捕获的异常,所以这个异常一般发生在显示加载类的时候,如下面两种方式显示来加载类并要捕获异常。
当无法找到对应的类时都会抛出ClassNotFoundException异常。
NoClassDefFoundError
这是虚拟机隐式加载类出现的异常。
这个异常继承了Error类,一般发生在引用的类不存在,即类、方法或者属性引用了某个类或者接口,如果目标引用不存在就会抛出这个异常。
MyDomBuilder继承了DOMBuilder,如果把DOMBuilder所属的jar包范围设置为provided,即运行时找不到DOMBuilder类就会报错。
先报出ClassNotFoundException,然后引发NoClassDefFoundError。
所以,以上两个错误都要确保加载类或者引用类都要在classpath路径下。
ClassCastException
类转换异常,这个错误一般发生在一个对象强制转换类型的时候,如将一个String强制转换成Integer就会报这个错。
这个异常继承了运行时异常RuntimeException,不需要捕获的异常。为了避免报这个错,在转换之间可以先用instanceof判断下是不是该类的引用再转换。如果是集合类型,最好指定集合里面的泛型。
字符串"123"强制转换成Integer,然后报错。
猜你喜欢
- 2024-10-02 Maven 的这 7 个问题你思考过没有?
- 2024-10-02 220、Class.forName 和 ClassLoader 有什么区别?
- 2024-10-02 原型模式(Prototype)(原型模式和工厂模式区别)
- 2024-10-02 Alluxio使用贴士:客户端显示找不到FileSystem类问题分析与解决
- 2024-10-02 异常还不知道是什么?一文教会你异常是什么,如何优雅处理
- 2024-10-02 十年架构师干货总结:Java 的类加载机制
- 2024-10-02 线上故障排查全套路盘点,运维大哥请自查
- 2024-10-02 一文读懂 Java 异常处理(java异常处理的方法)
- 2024-10-02 反射必杀技:深入了解Class类,让你一通百通
- 2024-10-02 Java异常的面试问题及答案-Part 2
- 最近发表
- 标签列表
-
- cmd/c (64)
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- js判断是否空对象 (63)
- pythoncase语句 (81)
- es6includes (73)
- sqlset (64)
- phprequire_once (61)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)