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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 倪杭乘 中级黑马   /  2012-5-13 08:46  /  1476 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

拿到类的构造器后,用构造器获取对象
Persono = constructor.newInstance("wangwu",18);

这时可以通过o对象调用对象的方法

竟然有了这个为什么还有通过
Method method = clazz.getMethod()

获取方法后,再调用
Method.invoke(obj,null)

这两者有什么区别

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

2 个回复

倒序浏览
楼主一定要切记一个道理:反射是在运行中获取未知信息的强大技术
所以,用constructor和method方法,都是在未知类和类的成员方法的情况下使用的。
就算你成功newInstance获取了一个对象,但是你也不知道这个对象里有什么方法。
所以要使用Method。

乍看之下是没什么区别,但其实不是的。要记住使用反射的场合和宗旨,一切都是未知未知未知。
希望楼主能理解我说的。

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马