Spec-Zone.ru › OpenJDK 17

Интерфейс 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(int index)
Возвращает значение компонента массива.
List<Value> getValues()
Возвращает все компоненты в этом массиве.
List<Value> getValues(int index, int length)
Возвращает диапазон компонентов массива.
int length()
Возвращает количество компонентов в этом массиве.
void setValue(int index, Value value)
Заменяет компонент массива другим значением.
void setValues(int index, List<? extends Value> values, int srcIndex, int length)
Заменяет диапазон компонентов массива другими значениями.
void setValues(List<? extends Value> values)
Заменяет все компоненты массива другими значениями.

Методы, объявленные в интерфейсе 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

Методы, объявленные в интерфейсе com.sun.jdi.Value

type

Подробное описание методов

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().
См. также:
  • ArrayType.componentType()

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().
См. также:
  • ArrayType.componentType()

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
См. также:
  • ArrayType.componentType()

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API