- 所有超接口:
-
Mirror,ObjectReference,Value
- 自 JDK 版本:
- 1.3
-
Field Summary
Fields declared in interface com.sun.jdi.ObjectReference
INVOKE_NONVIRTUAL, INVOKE_SINGLE_THREADED -
Method Summary
Methods declared in interface com.sun.jdi.Mirror
toString, virtualMachineMethods declared in interface com.sun.jdi.ObjectReference
disableCollection, enableCollection, entryCount, equals, getValue, getValues, hashCode, invokeMethod, isCollected, owningThread, referenceType, referringObjects, setValue, uniqueID, waitingThreads
-
Method Details
-
length
int length()返回此数组中的组件数量。- 返回:
- 此数组中组件的整数计数。
-
getValue
返回数组组件值。- 参数:
-
index- 要检索的组件的索引 - 返回:
-
给定索引处的
Value。 - 抛出:
-
IndexOutOfBoundsException- 如果index超出此数组的范围,即,如果以下任一情况为真:index < 0 index >=length()
-
getValues
返回此数组中的所有组件。- 返回:
-
一个
Value对象列表,按数组索引排序,每个数组组件对应一个对象。对于长度为零的数组,返回一个空列表。
-
getValues
返回数组组件的范围。- 参数:
-
index- 要检索的第一个组件的索引 -
length- 要检索的组件数量,或者为 -1 以检索到数组末尾的所有组件。 - 返回:
-
一个
Value对象列表,按数组索引排序,每个请求的数组组件对应一个对象。当指定范围中没有元素时(例如,length为零),返回一个空列表。 - 抛出:
-
IndexOutOfBoundsException- 如果使用index和length指定的范围不在数组范围内,即,如果以下任一情况为真:index < 0 index >或者如果length()length != -1并且以下任一情况为真:length < 0 index + length >length()
-
setValue
用另一个值替换数组组件。对象值必须与组件类型兼容(这意味着组件类型必须通过声明类的类加载器加载)。原始值必须与组件类型兼容,或者必须能够在不丢失信息的情况下转换为组件类型。有关赋值兼容性的更多信息,请参见 JLS 第 5.2 节。
- 参数:
-
index- 要设置的组件的索引 -
value- 新值 - 抛出:
-
IndexOutOfBoundsException- 如果index超出此数组的范围,即,如果以下任一情况为真:index < 0 index >=length() -
InvalidTypeException- 如果value的类型与数组组件的声明类型不兼容。 -
ClassNotLoadedException- 如果数组组件类型尚未通过适当的类加载器加载。 -
VMCannotBeModifiedException- 如果虚拟机是只读的 - 请参阅VirtualMachine.canBeModified()。 - 参见:
-
setValues
用其他值替换所有数组组件。如果给定的列表大小大于数组的大小,则忽略列表末尾的值。对象值必须与元素类型兼容(这意味着组件类型必须通过封闭类的类加载器加载)。原始值必须与组件类型兼容,或者必须能够在不丢失信息的情况下转换为组件类型。有关赋值兼容性的更多信息,请参见 JLS 第 5.2 节。
- 参数:
-
values- 要放置在此数组中的Value对象列表。如果values.size()小于数组的长度,则设置前values.size()个元素。 - 抛出:
-
InvalidTypeException- 如果任何新的values与数组组件的声明类型不兼容。 -
ClassNotLoadedException- 如果数组组件类型尚未通过适当的类加载器加载。 -
VMCannotBeModifiedException- 如果虚拟机是只读的 - 请参阅VirtualMachine.canBeModified()。 - 参见:
-
setValues
void setValues(int index, List<? extends Value> values, int srcIndex, int length) throws InvalidTypeException, ClassNotLoadedException 用其他值替换一系列数组组件。对象值必须与组件类型兼容(这意味着组件类型必须通过封闭类的类加载器加载)。原始值必须与组件类型兼容,或者必须能够在不丢失信息的情况下转换为组件类型。有关赋值兼容性的更多信息,请参见 JLS 第 5.2 节。
- 参数:
-
index- 要设置的第一个组件的索引。 -
values- 要放置在此数组中的Value对象列表。 -
srcIndex- 要使用的第一个源值的索引。 -
length- 要设置的组件数量,或者为 -1 以设置所有组件到数组末尾或到values的末尾(以先到者为准)。 - 抛出:
-
InvalidTypeException- 如果values的任何元素与数组组件的声明类型不兼容。 -
IndexOutOfBoundsException- 如果使用index和length指定的数组范围不在数组范围内,或者如果使用srcIndex和length指定的源范围不在values内,即,如果以下任一情况为真:index < 0 index >或者如果length()srcIndex < 0 srcIndex > values.size()length != -1并且以下任一情况为真:length < 0 index + length >length()srcIndex + length > values.size() -
VMCannotBeModifiedException- 如果虚拟机是只读的 - 请参阅VirtualMachine.canBeModified()。 -
ClassNotLoadedException - 参见:
-