黑马程序员技术交流社区

标题: 利用反射实现普通内部类的实例化时的问题 [打印本页]

作者: tansuozhey    时间: 2015-10-26 17:29
标题: 利用反射实现普通内部类的实例化时的问题
执行Class.forName(tp).newInstance()时,其中tp为内部类名的字符串。但是报java.lang.InstantiationException违例;什么问题?



作者: tansuozhey    时间: 2015-11-24 08:06
就没人会打吗!

作者: tansuozhey    时间: 2015-11-24 08:17
原来是要用下面的反射的方式才可以:
Class<?> cla2 = Class.forName(tp);
Constructor<?>[] c = cla2.getDeclaredConstructors();
int i = c[0].getModifiers();
(内部类)c[0].newInstance(new 外部类);

作者: Camwly    时间: 2015-11-24 09:10
楼主没用到全限定名吧,只是用了一个类名吧




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2