用URLClassLoader無法實現重新載入類,幫幫忙

cchess發表於2004-06-27
public class A {
static{
System.out.println("開始初始化A");
}
public void print() {
System.out.println("Using Class A");
}
}

在一個程式的main方法中有段程式碼:

URL u = new URL("file:/C:/WINDOWS/jbproject/jdom/classes/");
URLClassLoader ucl = new URLClassLoader(new
URL[] {u});
Class c = ucl.loadClass("Word");
A asm = (A) c.newInstance();
asm.print();
System.out.println("=========================");
URL u1 = new URL("file:/C:/WINDOWS/jbproject/jdom/classes/");
URLClassLoader ucl1 = new URLClassLoader(new
URL[] {u1});
Class c1 = ucl1.loadClass("Word");
A asm1 = (A) c1.newInstance();
asm1.print();

執行結果為:

開始初始化A
Using Class A
=========================
Using Class A

並不是:

開始初始化A
Using Class A
=========================
開始初始化A
Using Class A


我是仿王森的《java深度歷險》寫,想實現兩次過載Class A

相關文章