noclassdelfounderror和classnotfoundexception的区别

 我来答
吉祥二进制
高粉答主

推荐于2018-04-19 · 科技改变生活,生活改变科技。
吉祥二进制
采纳数:33926 获赞数:84577

向TA提问 私信TA
展开全部
  一、ClassNotFoundException这个错误,比较常见也好理解。
  原因:就是找不到指定的class。
  常见的场景就是:
  1 调用class的forName方法时,找不到指定的类
  2 ClassLoader 中的 findSystemClass() 方法时,找不到指定的类
  3 ClassLoader 中的 loadClass() 方法时,找不到指定的类
  二、
  NoClassDefFoundError
  这个就比较奇葩了,查找其他的资料是说,通过了编译,但是使用的时候,比如new的时候会出错。
  通过查找资料,搜集到如下的场景:
  1 类依赖的class或者jar不存在
  2 类文件存在,但是存在不同的域中
  3 大小写问题,javac编译的时候是无视大小的,很有可能你编译出来的class文件就与想要的不一样!这个没有做验证。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式