ClassLoader.loadClass()方法執行時提示‘ClassNotFoundException’

Eternallyc發表於2018-08-28

eclipse中出現‘ClassNotFoundException’錯誤

在eclipse執行ClassLoader類時,一直出現如下錯誤

java.lang.ClassNotFoundException: MyTest

出錯程式碼如下:

package work;
class MyTest{
    static {
	System.out.println("靜態初始化塊....");
    }
}
public class Test {
   
    public static void main(String[] args) throws ClassNotFoundException   {
	ClassLoader cl = ClassLoader.getSystemClassLoader();
	cl.loadClass("MyTest");
	System.out.println("系統載入類");
	Class.forName("MyTest");
    } 
}

 錯誤原因 :找不到該類

解決辦法:在cl.loadClass("MyTest");的MyTest前加入包名,改為如下   cl.loadClass("work.MyTest");

程式碼改為如下:

package work;
class MyTest{
    static {
	System.out.println("靜態初始化塊....");
    }
}
public class Test {
   
    public static void main(String[] args) throws ClassNotFoundException   {
	ClassLoader cl = ClassLoader.getSystemClassLoader();
	cl.loadClass("work.MyTest");
	System.out.println("系統載入類");
	Class.forName("work.MyTest");
    } 
}

 

相關文章