Интерфейс InvokeDynamicEntry
- Все суперинтерфейсы:
DynamicConstantPoolEntry, PoolEntry
public sealed interface InvokeDynamicEntry extends DynamicConstantPoolEntry
Моделирует структуру где
CONSTANT_InvokeDynamic_info или символьную ссылку на динамически вычисляемую точку вызова в пуле констант файла class. Использование InvokeDynamicEntry моделируется символьным дескриптором DynamicCallSiteDesc. Его можно получить с помощью InvokeDynamicEntry::asSymbol и преобразовать обратно в запись пула констант с помощью ConstantPoolBuilder::invokeDynamicEntry.
Запись invoke dynamic является составной:
InvokeDynamicEntry(
BootstrapMethodEntry bootstrap,
NameAndTypeEntry nameAndType
)
type в nameAndType представляет собой строку дескриптора метода.- Примечание API:
- Динамически вычисляемую точку вызова часто называют динамической точкой вызова или indy — сокращением от «invoke dynamic».
- См. Спецификацию виртуальной машины Java:
- 4.4.10 Структуры
CONSTANT_Dynamic_infoиCONSTANT_InvokeDynamic_info
- Начиная с:
- 24
- См. также:
Краткое описание полей
Поля, объявленные в интерфейсе PoolEntry
TAG_CLASS, TAG_DOUBLE, TAG_DYNAMIC, TAG_FIELDREF, TAG_FLOAT, TAG_INTEGER, TAG_INTERFACE_METHODREF, TAG_INVOKE_DYNAMIC, TAG_LONG, TAG_METHOD_HANDLE, TAG_METHOD_TYPE, TAG_METHODREF, TAG_MODULE, TAG_NAME_AND_TYPE, TAG_PACKAGE, TAG_STRING, TAG_UTF8 | Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
TAG_CLASS |
Тег константы типа CONSTANT_Class. |
static final int |
TAG_DOUBLE |
Тег константы типа CONSTANT_Double. |
static final int |
TAG_DYNAMIC |
Тег константы типа CONSTANT_Dynamic. |
static final int |
TAG_FIELDREF |
Тег константы типа CONSTANT_Fieldref. |
static final int |
TAG_FLOAT |
Тег константы типа CONSTANT_Float. |
static final int |
TAG_INTEGER |
Тег константы типа CONSTANT_Integer. |
static final int |
TAG_INTERFACE_METHODREF |
Тег константы типа CONSTANT_InterfaceMethodref. |
static final int |
TAG_INVOKE_DYNAMIC |
Тег константы типа CONSTANT_InvokeDynamic. |
static final int |
TAG_LONG |
Тег константы типа CONSTANT_Long. |
static final int |
TAG_METHOD_HANDLE |
Тег константы типа CONSTANT_MethodHandle. |
static final int |
TAG_METHOD_TYPE |
Тег константы типа CONSTANT_MethodType. |
static final int |
TAG_METHODREF |
Тег константы типа CONSTANT_Methodref. |
static final int |
TAG_MODULE |
Тег константы типа CONSTANT_Module. |
static final int |
TAG_NAME_AND_TYPE |
Тег константы типа CONSTANT_NameAndType. |
static final int |
TAG_PACKAGE |
Тег константы типа CONSTANT_Package. |
static final int |
TAG_STRING |
Тег константы типа CONSTANT_String. |
static final int |
TAG_UTF8 |
Тег константы типа CONSTANT_Utf8. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
default DynamicCallSiteDesc |
asSymbol() |
Возвращает символьный дескриптор этой динамической точки вызова. |
default MethodTypeDesc |
typeSymbol() |
Возвращает символьный дескриптор типа вызова этой динамической точки вызова. |
Методы, объявленные в интерфейсе DynamicConstantPoolEntry
bootstrap, bootstrapMethodIndex, name, nameAndType, type | Модификатор и тип | Метод | Описание |
|---|---|---|
BootstrapMethodEntry |
bootstrap() |
Возвращает запись таблицы методов начальной загрузки для этой константы. |
int |
bootstrapMethodIndex() |
Возвращает индекс записи таблицы методов начальной загрузки для этой константы. |
default Utf8Entry |
name() |
Возвращает имя, указанное этой символьной ссылкой. |
NameAndTypeEntry |
nameAndType() |
Возвращает имя и строку дескриптора, указанные этой символьной ссылкой. |
default Utf8Entry |
type() |
Возвращает строку дескриптора, указанную этой символьной ссылкой. |
Методы, объявленные в интерфейсе PoolEntry
constantPool, index, tag, width | Модификатор и тип | Метод | Описание |
|---|---|---|
ConstantPool |
constantPool() |
Возвращает пул констант, из которого получена эта запись. |
int |
index() |
Возвращает индекс этой записи в пуле констант. |
int |
tag() |
Возвращает тег пула констант, описывающий тип этой записи. |
int |
width() |
Возвращает количество слотов пула констант, занимаемых этой записью. |
Подробное описание методов
typeSymbol
default MethodTypeDesc typeSymbol()
Возвращает символьный дескриптор типа вызова этой динамической точки вызова.
- Возвращает:
- символьный дескриптор типа вызова этой динамической точки вызова
asSymbol
default DynamicCallSiteDesc asSymbol()
Возвращает символьный дескриптор этой динамической точки вызова.
- Возвращает:
- символьный дескриптор этой динамической точки вызова
- См. также:
© 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.