NoClassDeFoundError与ClassNotFoundException二者的区别

杨采妮 Java面经 发布时间:2022-05-27 16:38:34 阅读数:17963 1
下文笔者讲述NoClassDeFoundError与ClassNotFoundException的功能简介说明,如下所示
NoClassDeFoundError和ClassNotFoundException区别
  1.一个继承自Exception,另一个继承自Error。
 
  2.NoClassDeFoundError
    NoClassDeFoundError继承自LinkageError
    NoClassDeFoundError是由于类加载过程中连接时错误
例:
 类abc extends ABC
   由于Windows中文件名不区分大小写
   所以编译时,先编译父类生成ABC.class
    然后编译子类abc.class
    此时由于不区分大小写,
	abc.class直接覆盖掉了ABC.class的内容了
 
  当在解析时,就找不到ABC这个类啦
  此时就报 NoClassDeFoundError 

 ClassNotFoundException
如JDBC的时候忘了添加驱动,则会报类找不到的错误信息
public static void main(String[] args) throws ClassNotFoundException {
   Class.forName("com.mysql.jdbc.driver");
}
通过以上的分析,我们可以得知两者的区别
NoClassDeFoundError:继承自Error属于用户程序无法捕获处理的异常
ClassNotFoundException:继承自Exception属于用户程序能捕获处理的异常
NoClassDeFoundError:发生在类生命周期中解析阶段找不到相应的类
ClassNotFoundException:发生在类生命周期的加载阶段,找不到相应的类
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaMianJing/202205/16536407513539.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者