The Java TM Tutorial

| Start of Tutorial > Start of Trail > Start of Lesson | Search

Trail: To 1.1 -- And Beyond!
Lesson: What's New in 1.1?

## Reflection

> Reflection enables Java code to discover information about the fields, methods and constructors of loaded classes, and to use reflected fields, methods, and constructors to operate on their underlying counterparts on objects, within security restrictions. The reflection API accommodates applications that need access to either the public members of a target object (based on its runtime class) or the members declared by a given class.

> You should avoid the temptation to use reflection when other tools more natural to the language would suffice. If you are accustomed to using function pointers in another language, for example, you might think that Method objects are a natural replacement for them. However, usually an object-oriented tool-such as an interface that is implemented by objects that perform the needed action-is better. Reflection is intended for use by language tools such as debuggers and class browsers.

### Where to Find Documentation

- The Java Core Reflection Specification can be found at the JDK website: Reflection Documentation.

| Start of Tutorial > Start of Trail > Start of Lesson | Search