NoClassDefFoundError和ClassNotFoundException
生活随笔
收集整理的這篇文章主要介紹了
NoClassDefFoundError和ClassNotFoundException
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
NoClassDefFoundError是一個錯誤(Error),而ClassNOtFoundException是一個異常,在Java中對于錯誤和異常的處理是不同的,我們可以從異常中恢復(fù)程序但卻不應(yīng)該嘗試從錯誤中恢復(fù) 程序。
ClassNotFoundException的產(chǎn)生原因:
Java支持使用Class.forName方法來動態(tài)地加載類,任意一個類的類名如果被作為參數(shù)傳遞給這個方法都將導(dǎo)致該類被加載到JVM內(nèi)存中,如果這個類在類路徑中沒有被找到,那么此時就會在 運(yùn)行時拋出ClassNotFoundException異常。
NoClassDefFoundError產(chǎn)生的原因:
如果JVM或者ClassLoader實例嘗試加載(可以通過正常的方法調(diào)用,也可能是使用new來創(chuàng)建新的對象)類的時候卻找不到類的定義。要查找的類在編譯的時候是存在的,運(yùn)行的時候卻找不 到了。這個時候就會導(dǎo)致NoClassDefFoundError.
總結(jié)
以上是生活随笔為你收集整理的NoClassDefFoundError和ClassNotFoundException的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 并发编程中的“冷知识”(更新中)
- 下一篇: 为什么HashMap要树化呢?