将类名称中的对象实例化为字符串

时间:2016-04-29 13:34:15

标签: java reflection

假设有一个类名作为字符串。

String myClass = "com.whatever.MyClass";

如何使用反射实例化此类并且具有类型为MyClass而不是Object的对象,而不使用如下代码:

MyClass myObj = MyClass.class.cast(instance);

基本上我想将Object的实例转换为MyClass而不在代码中使用MyClass,只需将类名称知道为字符串。

1 个答案:

答案 0 :(得分:0)

您可以创建类的实例并运行其方法,而无需使用反射在代码中导入类:

Class clazz = Class.forName("com.whatever.MyClass");
Object instance = clazz.newInstance();  // or use the given instance
clazz.getMethod("myMethod").invoke(instance);