黑马程序员技术交流社区

标题: java 反射机制 [打印本页]

作者: 壁虎    时间: 2013-3-24 22:29
标题: java 反射机制
本帖最后由 tuo1254 于 2013-3-25 13:55 编辑

看了老师的视频,老师说只有自己做框架时才会用到反射技术?难道除此之外,就没有别的地方需要用到反射技术吗?



作者: 张海洋    时间: 2013-3-24 22:50
感觉我们学基础,都是为了以后做项目能用到,只有基础学得好,以后才能学得好!
作者: 魏福伟    时间: 2013-3-24 22:56
基础好,以后才能更好的理解框架的原理,走的更远
作者: _王涛    时间: 2013-3-24 23:13
Java语言反射提供一种动态链接程序组件的多功能方法。它允许程序创建和控制任何类的对象,无需提前硬编码目标类。这些特性使得反射特别适用于创建以非常普通的方式与对象协作的库。Java reflection 非常有用,它使类和数据结构能按名称动态检索相关信息,并允许在运行着的程序中操作这些信息。Java 的这一特性非常强大,并且是其它一些常用语言,如 C、C++、Fortran 或者 Pascal 等都不具备的。
作者: 范德农    时间: 2013-3-24 23:42
在反射的过程中会占用大量资源,所以很少用于应用程序,而多用于系统程序。J2EE的一个很重要的应用是ERP的搭建,在这个过程中必然会用上Spring等常见框架,但是也需要你自己定制些内容,这时反射的掌握就是必须的肯,何况,发展到后来,若想有所成就,必然需要能够自己定制一套行而有效的框架,而不再只是单独借用已有框架。就像尽管虚幻、Unity3D等游戏引擎功能何其完善,但是想有所成就的游戏公司无不争相开发自己的初期可能不完善的3D引擎,自己做的才是自己真正拥有的,才是真正适合自己的,从长期来看,反射的掌握无疑是必须的。
作者: 罗平    时间: 2013-3-25 11:54
用于某些模块集成场合。
当你不能在开发时即得到其目标类完整接口定义,只能根据命名规则去进行集成时。
并可以延伸到包装、动态代理等模式的应用中。
有时候也干些hack的事情,比如绕过private保护机制啥的。
作者: 朱德帅    时间: 2013-3-25 13:41
我在jdbc应用中看到过Class.forName("*****"),******代表jdbc驱动的完整类名。用来加载数据库驱动。不信可以查查看。




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