反射库(reflection library)提供了一个非常丰富且精心设计的工具集,以便编写能够动态操纵Java代码的程序。这项功能被大量地应用于JavaBeans中,它是Java组件的体系建构。使用反射Java可以支持Visual Basic用户的习惯使用的工具。特别是在设计或运行中添加新类是,能够快速地应用开发工具动态地查询新添加类的能力
能够分析类的能力的程序称为反射(reflective)。反射机制的功能及其强大,可以用来
- 在运行时分析类的能力。
- 在运行时查看对象,例如,编写一个toString方法供所有类使用。
- 实现通用的数组操作码。
- 利用Method对象,这个对象很像C++中的指针。
反射是一种功能强大且复杂的机制。使用它的主要人员是工具构造者,而不是应用程序员。