## Uses of Interface
com.sun.jdi.ObjectReference

- Packages that use ObjectReference
  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.

- - ### Uses of ObjectReference in com.sun.jdi

    Subinterfaces of ObjectReference in com.sun.jdi
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `ArrayReference` Provides access to an array object and its components in the target VM.
    `interface` | `ClassLoaderReference` A class loader object from the target VM.
    `interface` | `ClassObjectReference` An instance of java.lang.Class from the target VM.
    `interface` | `StringReference` A string object from the target VM.
    `interface` | `ThreadGroupReference` A thread group object from the target VM.
    `interface` | `ThreadReference` A thread object from the target VM.

    Methods in com.sun.jdi that return ObjectReference
    Modifier and Type | Method and Description
    --- | ---
    `ObjectReference` | ThreadReference.`currentContendedMonitor()` Returns an `ObjectReference` for the monitor, if any, for which this thread is currently waiting.
    `ObjectReference` | InvocationException.`exception()`
    `ObjectReference` | MonitorInfo.`monitor()` Returns the `ObjectReference` object for the monitor.
    `ObjectReference` | ClassType.`newInstance(ThreadReference thread, Method method, List<? extends Value> arguments, int options)` Constructs a new instance of this type, using the given constructor `Method` in the target VM.
    `ObjectReference` | StackFrame.`thisObject()` Returns the value of 'this' for the current frame.

    Methods in com.sun.jdi that return types with arguments of type ObjectReference
    Modifier and Type | Method and Description
    --- | ---
    `List<ObjectReference>` | ReferenceType.`instances(long maxInstances)` Returns instances of this ReferenceType.
    `List<ObjectReference>` | ThreadReference.`ownedMonitors()` Returns a List containing an `ObjectReference` for each monitor owned by the thread.
    `List<ObjectReference>` | ObjectReference.`referringObjects(long maxReferrers)` Returns objects that directly reference this object.

    Methods in com.sun.jdi with parameters of type ObjectReference
    Modifier and Type | Method and Description
    --- | ---
    `void` | ThreadReference.`stop(ObjectReference throwable)` Stops this thread with an asynchronous exception.

    Constructors in com.sun.jdi with parameters of type ObjectReference
    Constructor and Description
    `InvocationException(ObjectReference exception)`

  - ### Uses of ObjectReference in com.sun.jdi.event

    Methods in com.sun.jdi.event that return ObjectReference
    Modifier and Type | Method and Description
    --- | ---
    `ObjectReference` | ExceptionEvent.`exception()` Gets the thrown exception object.
    `ObjectReference` | MonitorContendedEnteredEvent.`monitor()` Returns the monitor that was entered.
    `ObjectReference` | MonitorContendedEnterEvent.`monitor()` Returns the method that was entered.
    `ObjectReference` | MonitorWaitEvent.`monitor()` Returns the monitor object that the thread about to wait.
    `ObjectReference` | MonitorWaitedEvent.`monitor()` Returns the monitor object this thread waited on.
    `ObjectReference` | WatchpointEvent.`object()` Returns the object whose field is about to be accessed/modified.

  - ### Uses of ObjectReference in com.sun.jdi.request

    Methods in com.sun.jdi.request with parameters of type ObjectReference
    Modifier and Type | Method and Description
    --- | ---
    `void` | MethodExitRequest.`addInstanceFilter(ObjectReference instance)` Restricts the events generated by this request to those in which the currently executing instance ("this") is the object specified.
    `void` | MonitorContendedEnterRequest.`addInstanceFilter(ObjectReference instance)` Restricts the events generated by this request to those in which the currently executing instance ("this") is the object specified.
    `void` | MonitorContendedEnteredRequest.`addInstanceFilter(ObjectReference instance)` Restricts the events generated by this request to those in which the currently executing instance ("this") is the object specified.
    `void` | WatchpointRequest.`addInstanceFilter(ObjectReference instance)` Restricts the events generated by this request to those in which the currently executing instance ("this") is the object specified.
    `void` | MonitorWaitedRequest.`addInstanceFilter(ObjectReference instance)` Restricts the events generated by this request to those in which the currently executing instance ("this") is the object specified.
    `void` | StepRequest.`addInstanceFilter(ObjectReference instance)` Restricts the events generated by this request to those in which the currently executing instance ("this") is the object specified.
    `void` | BreakpointRequest.`addInstanceFilter(ObjectReference instance)` Restricts the events generated by this request to those in which the currently executing instance is the object specified.
    `void` | MethodEntryRequest.`addInstanceFilter(ObjectReference instance)` Restricts the events generated by this request to those in which the currently executing instance ("this") is the object specified.
    `void` | MonitorWaitRequest.`addInstanceFilter(ObjectReference instance)` Restricts the events generated by this request to those in which the currently executing instance ("this") is the object specified.
    `void` | ExceptionRequest.`addInstanceFilter(ObjectReference instance)` Restricts the events generated by this request to those in which the currently executing instance ("this") is the object specified.

Copyright © 1999, 2015, Oracle and/or its affiliates. All rights reserved.