1
我有一個Package
實例和一個Class
名稱作爲字符串。級聯包和類名(java反射)
是否有任何優雅的方式來連接它們(所以我可以對結果運行Class.forName()
)?
我當然可以從包中提取字符串,並在它和類名之間添加一段時間,但必須有一個更優雅的方式來做到這一點。
我有一個Package
實例和一個Class
名稱作爲字符串。級聯包和類名(java反射)
是否有任何優雅的方式來連接它們(所以我可以對結果運行Class.forName()
)?
我當然可以從包中提取字符串,並在它和類名之間添加一段時間,但必須有一個更優雅的方式來做到這一點。
沒有什麼特別的設施,以加入他們的包名簡單的類名,你不得不這樣做自己:
Package package = Package.getPackage("java.lang");
String simpleClassName = "String";
Class clazz = Class.forName (package.getName() + "." + simpleClassName);
謝謝。這就是我所做的,只是認爲應該有類似於目錄和文件連接的東西。 – Clangon
爲什麼你認爲串聯兩個是不是一個優雅的方式? String fqcn = packageName +「。」 + className; 或 StringBuilder sb = new StringBuilder(); sb.append(packageName); sb.append(「。」); sb.append(className); – anacron
@anacron建議,連接是一個好方法,但是如果你想要別的東西,可以使用'StringBuilder'來追加。 – Sid
我在想,必須有一種方法從包中獲取類,然後使用它的名稱,或者將包連接到類的某些函數,類似於目錄和文件(路徑)的類型。 – Clangon