2013-04-23 83 views
4

我想創建一個從字符串類型到類名的列表。 例如,Java:如何從字符串創建一個類的列表

String nameOfClass = "com.my.list.class"; 
List list = new ArrayList<nameOfclass>(); 

我只知道類的類型被插入在文本格式運行列表。

這可能嗎?只有在編譯時有發生

+2

爲什麼你需要這個...? – NoNaMe 2013-04-23 04:36:14

+0

您必須通過反射Class.forName()創建nameOfClass的實例,然後爲該類創建一個列表。 – prasanth 2013-04-23 04:36:43

+1

@prasanth在運行時它是''List''的'Object's。 – 2013-04-23 04:37:05

回答

9

泛型類型的註釋,它們從運行時間刪除。當程序執行時,ArrayList不知道它的泛型類型。

因此,類型註釋僅對編譯器有用。如果你在編譯時(程序設計時)不知道類型,那麼你就不能使用它們。

+0

如果您爲了解這個問題需要更多的上下文,我們可能會爲此提供一個替代方案。 – Thilo 2013-04-23 04:39:34

相關問題