Интерфейс ArrayReference
- Все суперинтерфейсы:
-
Mirror,ObjectReference,Value
public interface ArrayReference extends ObjectReference
Value. Компоненты массива в совокупности помещаются в объекты List вместо массивов для согласованности с остальной частью API и для взаимодействия с другими API.- С момента:
- 1.3
Краткое описание полей
Поля, объявленные в интерфейсе com.sun.jdi.ObjectReference
INVOKE_NONVIRTUAL, INVOKE_SINGLE_THREADED
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Value |
getValue |
Возвращает значение компонента массива. |
List<Value> |
getValues() |
Возвращает все компоненты в этом массиве. |
List<Value> |
getValues |
Возвращает диапазон компонентов массива. |
int |
length() |
Возвращает количество компонентов в этом массиве. |
void |
setValue |
Заменяет компонент массива другим значением. |
void |
setValues |
Заменяет диапазон компонентов массива другими значениями. |
void |
setValues |
Заменяет все компоненты массива другими значениями. |
Методы, объявленные в интерфейсе com.sun.jdi.Mirror
toString, virtualMachine
Методы, объявленные в интерфейсе com.sun.jdi.ObjectReference
disableCollection, enableCollection, entryCount, equals, getValue, getValues, hashCode, invokeMethod, isCollected, owningThread, referenceType, referringObjects, setValue, uniqueID, waitingThreads
Подробное описание методов
length
int length()
- Возвращает:
- целое количество компонентов в этом массиве.
getValue
Value getValue(int index)
- Параметры:
-
index- индекс компонента для извлечения - Возвращает:
Valueпо указанному индексу.- Исключение:
-
IndexOutOfBoundsException- еслиindexвыходит за пределы этого массива, то есть, если выполняется одно из следующих условий:index < 0 index >=length()
getValues
List<Value> getValues()
- Возвращает:
- список объектов
Value, по одному для каждого компонента массива, упорядоченного по индексу массива. Для массивов нулевой длины возвращается пустой список.
getValues
List<Value> getValues(int index, int length)
- Параметры:
-
index- индекс первого компонента для извлечения -
length- количество компонентов для извлечения, или -1 для извлечения всех компонентов до конца этого массива. - Возвращает:
- список объектов
Value, по одному для каждого запрошенного компонента массива, упорядоченного по индексу массива. Если в указанном диапазоне нет элементов (например,lengthравно нулю), возвращается пустой список - Исключение:
-
IndexOutOfBoundsException- если диапазон, указанныйindexиlength, не находится в пределах массива, то есть, если выполняется одно из следующих условий:index < 0 index >или еслиlength()length != -1и выполняется одно из следующих условий:length < 0 index + length >length()
setValue
void setValue(int index, Value value) throws InvalidTypeException, ClassNotLoadedException
Значения объектов должны быть совместимы по присваиванию с типом компонента (это подразумевает, что тип компонента должен быть загружен через загрузчик классов объявляющего класса). Примитивные значения должны быть либо совместимы по присваиванию с типом компонента, либо должны быть преобразуемы в тип компонента без потери информации. Дополнительную информацию о совместимости по присваиванию см. в разделе JLS 5.2.
- Параметры:
-
value- новое значение -
index- индекс компонента для установки - Исключение:
-
IndexOutOfBoundsException- еслиindexвыходит за пределы этого массива, то есть, если выполняется одно из следующих условий:index < 0 index >=length() -
InvalidTypeException- если типvalueнесовместим с объявленным типом компонентов массива. -
ClassNotLoadedException- если тип компонента массива еще не загружен через соответствующий загрузчик классов. -
VMCannotBeModifiedException- если VirtualMachine является только для чтения - см.VirtualMachine.canBeModified(). - См. также:
setValues
void setValues(List<? extends Value> values) throws InvalidTypeException, ClassNotLoadedException
Значения объектов должны быть совместимы по присваиванию с типом элемента (это подразумевает, что тип компонента должен быть загружен через загрузчик классов окружающего класса). Примитивные значения должны быть либо совместимы по присваиванию с типом компонента, либо должны быть преобразуемы в тип компонента без потери информации. Дополнительную информацию о совместимости по присваиванию см. в разделе JLS 5.2.
- Параметры:
-
values- список объектовValue, которые нужно поместить в этот массив. Еслиvalues.size()меньше длины массива, устанавливаются первыеvalues.size()элементы. - Исключение:
-
InvalidTypeException- если какой-либо новыйvaluesнесовместим с объявленным типом компонентов массива. -
ClassNotLoadedException- если тип компонента массива еще не загружен через соответствующий загрузчик классов. -
VMCannotBeModifiedException- если VirtualMachine является только для чтения - см.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 является только для чтения - см.VirtualMachine.canBeModified(). ClassNotLoadedException- См. также:
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/jdk.jdi/com/sun/jdi/ArrayReference.html