A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王冰 中级黑马   /  2012-7-13 18:48  /  1611 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

             张老师在视频中用反射的方式得到一个类中的构造方法,然后再用newInstance()方法创建一个
此类的示例对象,比如:
         Constructor constructor1 = String.class.getConstructor(StringBuffer.class);
         String s2 = (String) constructor1.newInstance(new StringBuffer("abc"));
为什么要这样创建呢?我觉得如果知道一个类中有哪些构造方法的话,直接创建不是
更好吗?用反射反而变得复杂了,并且效率还降低了。

1 个回复

正序浏览
如果在编写程序的时候已经知道类名当然不会用反射这么麻烦的东西
但反射其实是为了后期的升级什么的  还有使用框架进行编程,这时候就不能不要反射了
正如张老师所说的,我们在编写一个程序的时候还不知道后期建立的类叫什么名字 我们只能写留下接口 先利用反射技术把接口的方法"用起来"    让后面的写的实现类把类名通过配置文件传过来 我们再一改配置文件就OK了 多方便啊
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马