org.apache.xml.utils.synthetic.Class is a mutable equivalent of java.lang.Class. Instances represent classes and interfaces in a running Java application, or class descriptions under construction. In the former case, org.apache.xml.utils.synthetic.Class operates as a proxy for the "real" java.lang.Class object; in the latter, it consults data structures defined in the org.apache.xml.utils.synthetic.reflection.* package.
Unlike java.lang.Class, org.apache.xml.utils.synthetic.Class has a pair of factories (fromName and fromClass). It can also be switched from synthetic to proxy operation after construction, by setting the realClass property; this is intended to allow these definitions to be "compiled in place".
For convenient use, org.apache.xml.utils.synthetic.Class implements an extended version of the java.lang.Class API -- but is not a subclass thereof, since java.lang.Class is Final (presumably for security reasons).
DEVELOPMENT NOTE: Methods not yet implemented will throw IllegalStateException
I've added code to convert primitive names into their TYPEs, to accept foo[] as a synonym for [Lfoo, and to generate the right thing on output (getJava[Short]Name). Useful extension for code generation from Java-like source. We may want to factor these and toSource out, making org.apache.xml.utils.synthetic.Class addess only the JVM level and providing subclasses or access tools that handle language syntax (Java source, NetRexx source, etc.)
@since 2000/2/10