在Java中有沒有一種方法可以通過編程方式導入一個給定其全名作爲字符串的類(即像"com.mydummypackage.MyClass"
)?如何以編程方式導入Java類
回答
如果「進口」你的意思是「加載Class
對象,以便您可以運行反射法」,然後使用:
Class<?> clazz = Class.forName("com.mypackage.MyClass");
(我們之所以讀者被你的話弄得「進口」是通常這指的是在Java類文件頂部附近使用的關鍵字import
告訴編譯器如何擴展類名,例如import java.util.*;
)。
Object o = clazz.newInstance();如果我們想要使用這個類的對象,就需要它。 – 2014-08-26 05:45:52
Java文檔是知識像這樣的東西的重要來源,我建議你類對象的文檔可以在這裏找到讀了起來: http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Class.html
正如傑森·科恩的答覆中提到,你可以加載使用下面的代碼行,然後創建一個類,你將執行Class對象的newInstance方法,像這樣的一個實例類對象:
Class<?> clazz = Class.forName("com.mypackage.MyClass");
Object o = clazz.newInstance();
不要混淆「進口」與類裝載。
導入語句不加載任何內容。它所做的就是不必輸入完全解析的類名。如果您導入foo.bar.Baz,則可以在代碼中引用Baz類,而不必拼寫出來。這就是所有的進口手段。
aaaah ...好吧,我現在明白了。非常感謝,這是我在閱讀Java 101時錯過的重要一點,我猜... – xelurg 2009-01-23 16:17:12
- 1. 如何以編程方式導入/導出SQL數據庫表
- 2. 以編程方式動態導入
- 3. 以編程方式批量導入LDIF
- 4. 如何以編程方式編譯和實例化Java類?
- 5. 如何以編程方式KieServices與Java
- 6. Java Eclipse:以編程方式導入插件和片段
- 7. 以編程方式通過Java導入(mysql)數據庫轉儲
- 8. 通過java以編程方式導入oracle轉儲?
- 9. Java以編程方式將csv導入到SQLite3表中
- 10. 如何在Magento中以編程方式導入Category Image?
- 11. 如何以編程方式刪除Groovy中的默認導入?
- 12. 如何從文件以編程方式導入用戶庫
- 13. 如何以編程方式從.zip文件導入Eclipse項目?
- 14. 如何以編程方式導入CRM組織?
- 15. 如何以編程方式將XML數據導入Excel文件?
- 16. 如何以編程方式從LDAP導入用戶Liferay 6.0.5
- 17. 如何以編程方式導入或創建頁面模板
- 18. 如何以編程方式導入書籤
- 19. 如何以編程方式將訂單導入Magento?
- 20. 如何以編程方式在Java中使用osmosis導入OSM數據?
- 21. 以編程方式編譯java文件
- 22. Java以編程方式編譯jar
- 23. 如何以編程方式打開引導移動導航欄?
- 24. 如何以編程方式導航導航控制器堆棧?
- 25. 以編程方式導入/導出融合表
- 26. 以編程方式導出Google Cloud Datastore並導入到BigQuery
- 27. 如何使用Open Office PDF導入擴展以編程方式編輯PDF
- 28. 以編程方式創建文件以便導入Quicken?
- 29. 如何以編程方式導出SQL模式使用Microsoft.SqlServer.Management.Smo
- 30. 如何以編程方式編輯GridView?
你的意思是導入(到.java文件中)還是你的意思是實例化? – 2009-01-22 21:06:02