# Uses of Interface
com.sun.jdi.ReferenceType

Packages that use ReferenceType
Package
Description
com.sun.jdi
This is the core package of the Java Debug Interface (JDI), it defines mirrors for values, types, and the target VirtualMachine itself - as well bootstrapping facilities.
com.sun.jdi.event
This package defines JDI events and event processing.
com.sun.jdi.request
This package is used to request that a JDI event be sent under specified conditions.
jdk.jshell.execution
Provides implementation support for building JShell execution engines.

## Uses of ReferenceType in com.sun.jdi

Subinterfaces of ReferenceType in com.sun.jdi
Modifier and Type
Interface
Description
`interface`
`ArrayType`
Provides access to the class of an array and the type of its components in the target VM.
`interface`
`ClassType`
A mirror of a class in the target VM.
`interface`
`InterfaceType`
A mirror of an interface in the target VM.
Methods in com.sun.jdi that return ReferenceType
Modifier and Type
Method
Description
`ReferenceType`
Location.`declaringType()`
Gets the type to which this Location belongs.
`ReferenceType`
TypeComponent.`declaringType()`
Returns the type in which this component was declared.
`ReferenceType`
ObjectReference.`referenceType()`
Gets the `ReferenceType` that mirrors the type of this object.
`ReferenceType`
ClassObjectReference.`reflectedType()`
Returns the `ReferenceType` corresponding to this class object.
Methods in com.sun.jdi that return types with arguments of type ReferenceType
Modifier and Type
Method
Description
`List<ReferenceType>`
VirtualMachine.`allClasses()`
Returns all loaded types in the target VM.
`List<ReferenceType>`
VirtualMachine.`classesByName(String className)`
Returns the loaded reference types that match a given name.
`List<ReferenceType>`
ClassLoaderReference.`definedClasses()`
Returns a list of all classes defined by this class loader.
`List<ReferenceType>`
ReferenceType.`nestedTypes()`
Returns a List containing `ReferenceType` objects that are declared within this type and are currently loaded into the Virtual Machine.
`List<ReferenceType>`
ClassLoaderReference.`visibleClasses()`
Returns a list of all classes which this class loader can find by name via `ClassLoader::loadClass`, `Class::forName` and bytecode linkage in the target VM.
Method parameters in com.sun.jdi with type arguments of type ReferenceType
Modifier and Type
Method
Description
`long[]`
VirtualMachine.`instanceCounts(List<? extends ReferenceType> refTypes)`
Returns the number of instances of each ReferenceType in the 'refTypes' list.
`void`
VirtualMachine.`redefineClasses(Map<? extends ReferenceType,byte[]> classToBytes)`
All classes given are redefined according to the definitions supplied.

## Uses of ReferenceType in com.sun.jdi.event

Methods in com.sun.jdi.event that return ReferenceType
Modifier and Type
Method
Description
`ReferenceType`
ClassPrepareEvent.`referenceType()`
Returns the reference type for which this event was generated.

## Uses of ReferenceType in com.sun.jdi.request

Methods in com.sun.jdi.request that return ReferenceType
Modifier and Type
Method
Description
`ReferenceType`
ExceptionRequest.`exception()`
Returns exception type for which exception events are requested.
Methods in com.sun.jdi.request with parameters of type ReferenceType
Modifier and Type
Method
Description
`void`
ClassPrepareRequest.`addClassFilter(ReferenceType refType)`
Restricts the events generated by this request to be the preparation of the given reference type and any subtypes.
`void`
ExceptionRequest.`addClassFilter(ReferenceType refType)`
Restricts the events generated by this request to those whose location is in the given reference type or any of its subtypes.
`void`
MethodEntryRequest.`addClassFilter(ReferenceType refType)`
Restricts the events generated by this request to those whose method is in the given reference type or any of its subtypes.
`void`
MethodExitRequest.`addClassFilter(ReferenceType refType)`
Restricts the events generated by this request to those whose method is in the given reference type or any of its subtypes.
`void`
MonitorContendedEnteredRequest.`addClassFilter(ReferenceType refType)`
Restricts the events generated by this request to those whose method is in the given reference type or any of its subtypes.
`void`
MonitorContendedEnterRequest.`addClassFilter(ReferenceType refType)`
Restricts the events generated by this request to those whose method is in the given reference type or any of its subtypes.
`void`
MonitorWaitedRequest.`addClassFilter(ReferenceType refType)`
Restricts the events generated by this request to those whose monitor object is of the given reference type or any of its subtypes.
`void`
MonitorWaitRequest.`addClassFilter(ReferenceType refType)`
Restricts the events generated by this request to those whose monitor object is of the given reference type or any of its subtypes.
`void`
StepRequest.`addClassFilter(ReferenceType refType)`
Restricts the events generated by this request to those whose location is in the given reference type or any of its subtypes.
`void`
WatchpointRequest.`addClassFilter(ReferenceType refType)`
Restricts the events generated by this request to those whose location is in the given reference type or any of its subtypes.
`ExceptionRequest`
EventRequestManager.`createExceptionRequest(ReferenceType refType, boolean notifyCaught, boolean notifyUncaught)`
Creates a new disabled `ExceptionRequest`.

## Uses of ReferenceType in jdk.jshell.execution

Methods in jdk.jshell.execution that return ReferenceType
Modifier and Type
Method
Description
`protected ReferenceType`
JdiExecutionControl.`referenceType(VirtualMachine vm, String name)`
Returns the JDI `ReferenceType` corresponding to the specified class name.