2011-04-07 73 views
1

可能重複:
Dynamically loading a class in Java通過字符串在java中創建一個對象

喜 我試圖創建一個獲取字符串參數的方法,並返回的新對象一樣的名字。即如果參數是「Mod」,該方法將返回新的Mod();

有沒有辦法做到這一點,沒有很多的if語句? 謝謝!

+0

嘗試使用的if else鏈? – babsher 2011-04-07 13:21:55

+1

java.lang.Class.forName(className) – amit 2011-04-07 13:22:00

+0

我相信這是[在Java中動態加載一個類]的副本(http://stackoverflow.com/questions/5571466/dynamically-loading-a-class-in -java)。 – 2011-04-07 13:22:12

回答

8

與反思:

/** 
* @param type A fully qualified Java type 
*/ 
public Object create(String type) throws Exception { 
    return Class.forName(type).newInstance(); 
} 

讀相應的Javadoc來了解這是怎麼回事

相關問題