Класс DynamicCallSiteDesc
java.lang.Object
java.lang.constant.DynamicCallSiteDesc
public final class DynamicCallSiteDesc extends Object
invokedynamic — это номинальный дескриптор точки вызова. Объект DynamicCallSiteDesc неизменяем, и его поведение не зависит от идентичности объекта.
- Начиная с:
- 12
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
ConstantDesc[] |
bootstrapArgs() |
Возвращает ConstantDesc, описывающие аргументы загрузчика для invokedynamic. |
MethodHandleDesc |
bootstrapMethod() |
Возвращает MethodHandleDesc, описывающий метод загрузчика для invokedynamic. |
final boolean |
equals |
Сравнивает указанный объект с этим дескриптором на равенство. |
final int |
hashCode() |
Возвращает хеш-код этого объекта. |
String |
invocationName() |
Возвращает имя вызова, которое указывалось бы в операнде NameAndType инструкции invokedynamic. |
MethodTypeDesc |
invocationType() |
Возвращает MethodTypeDesc, описывающий тип вызова, который указывался бы в операнде NameAndType инструкции invokedynamic. |
static DynamicCallSiteDesc |
of |
Создает номинальный дескриптор для точки вызова invokedynamic, метод загрузчика которой не имеет статических аргументов и для которой параметр имени равен ConstantDescs.DEFAULT_NAME. |
static DynamicCallSiteDesc |
of |
Создает номинальный дескриптор для точки вызова invokedynamic, метод загрузчика которой не имеет статических аргументов. |
static DynamicCallSiteDesc |
of |
Создает номинальный дескриптор для точки вызова invokedynamic. |
CallSite |
resolveCallSiteDesc |
Рефлексивно вызывает метод загрузчика с указанными аргументами и возвращает полученный CallSite
|
String |
toString() |
Возвращает краткое текстовое описание этой точки вызова, включая метод загрузчика, имя и тип вызова, а также статические аргументы загрузчика. |
DynamicCallSiteDesc |
withArgs |
Возвращает номинальный дескриптор точки вызова invokedynamic, метод загрузчика, имя и тип вызова которой совпадают с текущими, но с указанными аргументами загрузчика. |
DynamicCallSiteDesc |
withNameAndType |
Возвращает номинальный дескриптор точки вызова invokedynamic, загрузчик и аргументы загрузчика которой совпадают с текущими, но с указанными invocationName и invocation invocationType |
Методы, объявленные в классе Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удален в будущей версии. Финализация объявлена устаревшей и будет удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
Подробное описание методов
of
public static DynamicCallSiteDesc of(DirectMethodHandleDesc bootstrapMethod, String invocationName, MethodTypeDesc invocationType, ConstantDesc... bootstrapArgs)
Создает номинальный дескриптор для точки вызова
invokedynamic.- Параметры:
-
bootstrapMethod—DirectMethodHandleDesc, описывающий метод загрузчика дляinvokedynamic -
invocationName— неквалифицированное имя, которое указывалось бы в операндеNameAndTypeинструкцииinvokedynamic -
invocationType—MethodTypeDesc, описывающий тип вызова, который указывался бы в операндеNameAndTypeинструкцииinvokedynamic -
bootstrapArgs—ConstantDesc, описывающие статические аргументы загрузчика, которые указывались бы в атрибутеBootstrapMethods - Возвращает:
- номинальный дескриптор
- Вызывает:
-
NullPointerException— если какой-либо параметр или его содержимое имеет значениеnull -
IllegalArgumentException— если имя вызова имеет неправильный формат - См. Спецификацию виртуальной машины Java:
- 4.2.2 Неквалифицированные имена
of
public static DynamicCallSiteDesc of(DirectMethodHandleDesc bootstrapMethod, String invocationName, MethodTypeDesc invocationType)
Создает номинальный дескриптор для точки вызова
invokedynamic, метод загрузчика которой не имеет статических аргументов.- Параметры:
-
bootstrapMethod— метод загрузчика дляinvokedynamic -
invocationName— invocationName, которое указывалось бы в операндеNameAndTypeинструкцииinvokedynamic -
invocationType— invocation invocationType, который указывался бы в операндеNameAndTypeинструкцииinvokedynamic - Возвращает:
- номинальный дескриптор
- Вызывает:
-
NullPointerException— если какой-либо параметр равен null -
IllegalArgumentException— если имя вызова имеет неправильный формат
of
public static DynamicCallSiteDesc of(DirectMethodHandleDesc bootstrapMethod, MethodTypeDesc invocationType)
Создает номинальный дескриптор для точки вызова
invokedynamic, метод загрузчика которой не имеет статических аргументов и для которой параметр имени равен ConstantDescs.DEFAULT_NAME.- Параметры:
-
bootstrapMethod—DirectMethodHandleDesc, описывающий метод загрузчика дляinvokedynamic -
invocationType—MethodTypeDesc, описывающий тип вызова, который указывался бы в операндеNameAndTypeинструкцииinvokedynamic - Возвращает:
- номинальный дескриптор
- Вызывает:
-
NullPointerException— если какой-либо параметр равен null
withArgs
public DynamicCallSiteDesc withArgs(ConstantDesc... bootstrapArgs)
Возвращает номинальный дескриптор точки вызова
invokedynamic, метод загрузчика, имя и тип вызова которой совпадают с текущими, но с указанными аргументами загрузчика.- Параметры:
-
bootstrapArgs—ConstantDesc, описывающие статические аргументы загрузчика, которые указывались бы в атрибутеBootstrapMethods - Возвращает:
- номинальный дескриптор
- Вызывает:
-
NullPointerException— если аргумент или его содержимое имеет значениеnull
withNameAndType
public DynamicCallSiteDesc withNameAndType(String invocationName, MethodTypeDesc invocationType)
Возвращает номинальный дескриптор точки вызова
invokedynamic, загрузчик и аргументы загрузчика которой совпадают с текущими, но с указанными invocationName и invocation invocationType- Параметры:
-
invocationName— неквалифицированное имя, которое указывалось бы в операндеNameAndTypeинструкцииinvokedynamic -
invocationType—MethodTypeDesc, описывающий тип вызова, который указывался бы в операндеNameAndTypeинструкцииinvokedynamic - Возвращает:
- номинальный дескриптор
- Вызывает:
-
NullPointerException— если какой-либо параметр равен null -
IllegalArgumentException— если имя вызова имеет неправильный формат - См. Спецификацию виртуальной машины Java:
- 4.2.2 Неквалифицированные имена
invocationName
public String invocationName()
Возвращает имя вызова, которое указывалось бы в операнде
NameAndType инструкции invokedynamic.- Возвращает:
- имя вызова
invocationType
public MethodTypeDesc invocationType()
Возвращает
MethodTypeDesc, описывающий тип вызова, который указывался бы в операнде NameAndType инструкции invokedynamic.- Возвращает:
- тип вызова
bootstrapMethod
public MethodHandleDesc bootstrapMethod()
Возвращает
MethodHandleDesc, описывающий метод загрузчика для invokedynamic.- Возвращает:
- метод загрузчика для
invokedynamic
bootstrapArgs
public ConstantDesc[] bootstrapArgs()
Возвращает
ConstantDesc, описывающие аргументы загрузчика для invokedynamic. Возвращаемый массив всегда не равен null. Если у этого DynamicCallSiteDesc нет аргументов загрузчика, возвращается массив нулевой длины.- Возвращает:
- аргументы загрузчика для
invokedynamic
resolveCallSiteDesc
public CallSite resolveCallSiteDesc(MethodHandles.Lookup lookup) throws Throwable
Рефлексивно вызывает метод загрузчика с указанными аргументами и возвращает полученный
CallSite
- Параметры:
-
lookup—MethodHandles.Lookup, используемый для разрешения имен классов - Возвращает:
CallSite- Вызывает:
-
Throwable— если метод загрузчика выбрасывает исключение
equals
public final boolean equals(Object o)
Сравнивает указанный объект с этим дескриптором на равенство. Возвращает
true тогда и только тогда, когда указанный объект также является DynamicCallSiteDesc, а оба дескриптора имеют одинаковые методы загрузчика, списки аргументов загрузчика, имена вызова и типы вызова.hashCode
public final int hashCode()
Описание скопировано из класса:
ObjectВозвращает хеш-код этого объекта. Этот метод поддерживается для работы хеш-таблиц, например тех, которые предоставляет
HashMap. Общий контракт метода hashCode таков:
- При каждом вызове для одного и того же объекта в ходе выполнения приложения Java метод
hashCodeдолжен возвращать одно и то же целое число, если не изменены данные, используемые при сравненияхequalsэтого объекта. Это целое число не обязано оставаться неизменным при разных запусках одного и того же приложения. - Если два объекта равны согласно методу
equals, вызов методаhashCodeдля каждого из этих объектов должен возвращать одно и то же целое число. - Не требуется, чтобы вызовы метода
hashCodeдля двух объектов, не равных согласно методуequals, возвращали разные целые числа. Однако программисту следует учитывать, что разные целые числа для неравных объектов могут повысить производительность хеш-таблиц.
toString
© 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.