黑马程序员技术交流社区

标题: 关于反射的疑惑 [打印本页]

作者: 万正    时间: 2012-3-22 09:20
标题: 关于反射的疑惑
我刚看到反射的视频
如果想用类里面的属性、类名、方法,直接从自己的类里面找不就行了么
为什么要这么麻烦的用反射呢?
作者: Destiny    时间: 2012-3-22 09:29
许多框架神马的都是需要用反射来做的。你可以自己试着多一个类似的小框架看看。比如说稍微好做一点的模拟hibernate,模拟spring等等。你就可以看到反射的厉害之处了的。平时写写小代码是不需要用到反射的。在WEB这一块,反射用的就多了。

反射主要是给 java工具的开发者用的,不是给普通的java程序员的API,所以你用到的不多。

但是实际上structs hibernate tomcat jboss这些框架里面都是大量使用反射实现的,你感觉不到罢了
作者: 和心愿    时间: 2012-3-22 10:25
程序中许多对象在运行时有编译时类型和运行时类型之分(如多态),另外如果在运行时接收一个从外部传入的对象该对象编译时类型是object但是又需要其运行时类型的方法,这时就需要运行时信息来发现对象和类的真实信息,就必须用到反射。
作者: 张锦萍    时间: 2012-3-22 17:06
以前写框架程序也许到现在或今后还会使用,但是以前的类都不知道现在的类的名字,在程序中无法直接new 某个类的实例对象了,而要用反射方式来做。不然前人的工作就白做了。


作者: OMG    时间: 2012-3-22 19:33
初学阶段:面向对象编程
深造阶段:面向接口编程
就业阶段:面向框架编程
要做项目的时候,就需要有面向框架编程的意识和能力了;
作者: 〆_xin_、_跳    时间: 2012-3-23 19:21
Java反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判断任意一个类所具有的成员变量和方法;在运行时调用任意一个对象的方法;生成动态代理。因此很多框架就是用反射机制实现的
作者: 李成    时间: 2012-3-23 19:45
关于反射我是这么理解,很多时候我们要用框架来写程序,调用框架里的方法,这个意思就是我们调用框架的同时框架也是调用我们写的程序,我们可以直接看到框架里的方法和他的结构,但是框架不知道我写的程序中的方法,那么他就用反射机制 把我们在程序中写的各种成分映射成相应的java类,说白了通过反射可以把我们写的代码分成不同属性的java类 能让框架调用这些类。黑马教学视频中张老师的 java高新技术 说多比较详细建议你去下载多看几遍。
作者: 崔岩    时间: 2012-3-23 19:59
回复需要审核是怎么个情况?




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