|
|
|||||||||||||
Java Language Debug Reference OverviewThis topic provides details about registration, notification, static information, and dynamic information interfaces. Use these interfaces to register Java classes for debugging and to receive notification when new Java processes are created. These interfaces are implemented by the debugger and are used to notify the debugger when new Java processes are created and when events occur on a specific Java process. Static information on a Java process is available through the IRemoteField hierarchy of interfaces. These interfaces represent fields that are members of classes. These fields can be methods, objects, inner classes, or nested class definitions. Because all the attributes of a field are constant during its lifetime, this information can be cached by the debugger. The static information interfaces consist primarily of the IRemoteField interface and a collection of other interfaces designed for a specific Java object (primitive data types, arrays, classes, methods, and so on) that inherit from IRemoteField or from other interfaces that extend IRemoteField. Dynamic Information Interfaces Dynamic information on a Java process is available through the IRemoteObject hierarchy of interfaces. These interfaces provide bound access to objects of different types. An object does not necessarily refer to an instance of a class, but represents an instance of any type. The information obtained from an IRemoteObject is only valid during the lifetime of the actual object that it represents. Consequently, dynamic information cannot be cached by the debugger. Access to dynamic information in a Java process is based on using the IRemoteThreadGroup and IRemoteThread passed on each ThreadGroupCreateEvent and ThreadCreateEvent notification to the debugger. The IRemoteProcess:GetGlobalContainerObject method can also be used to access the root of this object hierarchy and descend down it to retrieve IRemoteClassField objects. The dynamic information interfaces consist primarily of IRemoteObject, IRemoteObjectEx, IEnumRemoteObject, the IEnumRemoteValue interfaces, and a collection of other interfaces designed for a specific Java object (primitive data types, arrays, or classes) that inherit from IRemoteObject or IEnumRemoteValue. |
© 1998 Microsoft Corporation. All rights reserved. Terms of use. |