The following definition of Reflection comes from "Java Reflection in Action" by Ira R. Forman and Nate Forman:
Reflection is the ability of a running program to examine itself and its software environment, and to change what it does depending on what it finds.
To perform this self-examination, a program needs to have a representation of itself. This information we call metadata. In an object-oriented world, metadata is organized into objects, called metaobjects. The runtime self-examination of the metaobjects is called introspection.
The ACTF Validation Components use the Java Reflection API to find information about your programs, like the constructors and methods invoked by the classes that comprise your application. This is what allows it to work on actual instances of objects (such as GUI components) in the JVM rather than source code for the classes of these instances.