所以我創建了一個類的實例,通過搜索沒有問題的jar文件,我已經設置爲使用c.newInstance()創建一個實例(是實例的權利在這裏使用的單詞?)創建一個動態加載的類的另一個實例 - Java
在程序後面我可能想要創建該類的另一個實例,如果發生某些事件。我怎麼能創建這個,而不必搜索所有的Jar文件,直到找到合適的文件然後重新創建它爲止?如果我還有第一個引用的話,有沒有辦法創建它?
請假設我不知道要在運行時加載的類的名稱,並且會有多個類將被加載。
感謝
所以我創建了一個類的實例,通過搜索沒有問題的jar文件,我已經設置爲使用c.newInstance()創建一個實例(是實例的權利在這裏使用的單詞?)創建一個動態加載的類的另一個實例 - Java
在程序後面我可能想要創建該類的另一個實例,如果發生某些事件。我怎麼能創建這個,而不必搜索所有的Jar文件,直到找到合適的文件然後重新創建它爲止?如果我還有第一個引用的話,有沒有辦法創建它?
請假設我不知道要在運行時加載的類的名稱,並且會有多個類將被加載。
感謝
假設 「x」 是您創建的對象......
x.getClass().newInstance();
保存到你的對象的類的引用
Class c = dynamicObject.getClass();
和
和你可以像這樣創建一個新的實例(假設有一個無參數的構造函數)
Object anotherDynamicObject = c.newInstance(); // you can cast accordingly
別的,說有這需要一個INT consturctor,你可以做
Constructor constructor = c.getConstructor(int.class);
Object anotherDynamicObject = constructor.newInstance(1);
哈哈,3人全部用正確的答案。我該如何選擇? – tgrosinger 2011-04-26 20:35:22
丟擲骰子... – Bozho 2011-04-26 20:37:30
當你形成答案時,你發現自己指的是一個特定的骰子嗎? – rajah9 2011-04-26 20:41:45