sun.com/docs/books/jls/"> Java
TM Language Specification. All ReferenceType objects belong to one of the following subinterfaces: {@link ClassType} for classes,{@link InterfaceType} for interfaces, and{@link ArrayType} for arrays.Note that primitive classes (for example, the {@link ClassObjectReference#reflectedType() reflected type} of{@link java.lang.Integer#TYPE Integer.TYPE}) are represented as ClassType. The VM creates Class objects for all three, so from the VM perspective, each ReferenceType maps to a distinct Class object.
ReferenceTypes can be obtained by querying a particular {@link ObjectReference} for itstype or by getting a list of all reference types from the {@link VirtualMachine}.
ReferenceType provides access to static type information such as methods and fields and provides access to dynamic type information such as the corresponding Class object and the classloader.
Any method on ReferenceType
which directly or indirectly takes ReferenceType
as an parameter may throw {@link com.sun.jdi.VMDisconnectedException} if the target VM isdisconnected and the {@link com.sun.jdi.event.VMDisconnectEvent} has been or isavailable to be read from the {@link com.sun.jdi.event.EventQueue}.
Any method on ReferenceType
which directly or indirectly takes ReferenceType
as an parameter may throw {@link com.sun.jdi.VMOutOfMemoryException} if the target VM has run out of memory.
Any method on ReferenceType
or which directly or indirectly takes ReferenceType
as parameter may throw {@link com.sun.jdi.ObjectCollectedException} if the mirrored type has been unloaded.
@see ObjectReference
@see ObjectReference#referenceType
@see VirtualMachine
@see VirtualMachine#allClasses
@author Robert Field
@author Gordon Hirsch
@author James McIlree
@since 1.3