Интерфейс StoreInstruction
- Все суперинтерфейсы:
-
ClassFileElement,CodeElement,Instruction
public sealed interface StoreInstruction extends Instruction
code атрибута Code. Соответствующие кодовые операции имеют вид Opcode.Kind.STORE. Доставляется как CodeElement при прохождении элементов CodeModel. Инструкция сохранения локальной переменной является составной:
StoreInstruction(
TypeKind typeKind,
int slot
)
TypeKind является вычислительным, а slot находится в пределах [0, 65535]. Последовательность инструкций astore или инструкции сохранения типа reference также могут работать с типом returnAddress из устаревших инструкций подпрограммы перехода.
- С:
- 24
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static StoreInstruction |
of |
Возвращает инструкцию сохранения локальной переменной.
|
static StoreInstruction |
of |
Возвращает инструкцию сохранения локальной переменной.
|
int |
slot() |
Возвращает слот локальной переменной для сохранения.
|
TypeKind |
typeKind() |
Возвращает вычислительный тип значения, которое нужно сохранить.
|
Методы, объявленные в интерфейсе java.lang.classfile.Instruction
opcode, sizeInBytes
Подробное описание методов
slot
int slot()
[0, 65535].- Возвращает:
- слот локальной переменной для сохранения
typeKind
TypeKind typeKind()
reference также работают с типом returnAddress, что не относится к инструкциям загрузки типа reference.- Возвращает:
- вычислительный тип значения, которое нужно сохранить
of
static StoreInstruction of(TypeKind kind, int slot)
kind преобразуется в его вычислительный тип. slot должен быть в пределах [0, 65535].- Параметры:
-
kind- тип значения, которое нужно сохранить -
slot- слот локальной переменной для сохранения - Возвращает:
- инструкцию сохранения локальной переменной
- Исключения:
-
IllegalArgumentException- еслиkindравенvoidилиslotнаходится вне диапазона
of
static StoreInstruction of(Opcode op, int slot)
Диапазон slot ограничен op и его размером:
- Если
opимеет размер 1,slotдолжен точно соответствовать значению слота, подразумеваемому кодовой операцией. - Если
opимеет размер 2,slotдолжен находиться в пределах[0, 255]. - Если
opимеет размер 4,slotдолжен находиться в пределах[0, 65535].
- Примечание API:
- Явное аргумент
opпозволяет создаватьwideили обычные инструкции сохранения, когдаslotможно закодировать с помощью более оптимизированных инструкций сохранения. - Параметры:
-
op- кодовая операция для определенного типа инструкции сохранения, которая должна иметь видOpcode.Kind.STORE -
slot- слот локальной переменной для сохранения - Возвращает:
- инструкцию сохранения локальной переменной
- Исключения:
-
IllegalArgumentException- если вид кодовой операции неOpcode.Kind.STOREилиslotнаходится вне диапазона
© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/lang/classfile/instruction/StoreInstruction.html