The parsing results of Java sources and the result of Java
Reflection may be uniformly accessed as
source elements.
The Java Hierarchy API
provides a single interface to any component capable of producing,
or desiring to read, the hierarchical structure of Java source and
bytecode.