黑马程序员技术交流社区
标题:
未知类名的类反射后也没办法实例化吗?
[打印本页]
作者:
adent
时间:
2014-7-27 02:39
标题:
未知类名的类反射后也没办法实例化吗?
本帖最后由 adent 于 2014-7-27 11:05 编辑
Class c=String.class;
但是不可以
c s=(c)c.newInstance();
那么对于存在文件里的类和对象(程序未知类名),怎么实例化啊?
作者:
fantacyleo
时间:
2014-7-27 03:12
Class cls = Class.forName("String");
Constructor constructor = cls.getConstructor(String.class);
Object obj = constructor.newInstance("hello");
System.out.println(cls.getMethod("charAt", int.class).invoke(obj, 1));
复制代码
作者:
adent
时间:
2014-7-27 08:07
fantacyleo 发表于 2014-7-27 03:12
Object类的话原来的函数也用不了。
作者:
fantacyleo
时间:
2014-7-27 10:20
adent 发表于 2014-7-27 08:07
Object类的话原来的函数也用不了。
我不是用了charAt么?
作者:
a6511631
时间:
2014-7-27 10:41
这个类名不是已经知道了吗?就是String。你的这句话“对于存在文件里的类和对象(程序未知类名)”,能描述的详细点吗?举个例子你看怎么样
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2