public class twoinstance
{
int a;
public static void main()
{
String name = twoinstance.class.getName();
name c = new name();
}
}
我知道这段代码不会编译,但我怎样才能实现这样的功能呢?
答案 0 :(得分:1)
因为name
是String引用,而不是类型。我想你想要像
Class<?> name = twoinstance.class;
try {
Object c = name.newInstance();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
答案 1 :(得分:0)
String name = twoinstance.class.getName();
将为您提供完全限定的类名(包括包名)
使用Class#newInstance() - 创建此Class对象所代表的类的新实例。
Object o = Class.forName(name).newInstance();
if(o instanceof twoinstance)
System.out.println("true");
else
System.out.println("false");