Spec-Zone.ru › OpenJDK 24

Интерфейс MethodTypeDesc

Все суперинтерфейсы:
ConstantDesc, TypeDescriptor, TypeDescriptor.OfMethod<ClassDesc, MethodTypeDesc>
public sealed interface MethodTypeDesc extends ConstantDesc, TypeDescriptor.OfMethod<ClassDesc, MethodTypeDesc>
A номинальный дескриптор для MethodType константы.
С:
12

Краткое описание вложенных классов

Вложенные классы/интерфейсы, объявленные в интерфейсе java.lang.invoke.TypeDescriptor

TypeDescriptor.OfField<F extends TypeDescriptor.OfField<F>>, TypeDescriptor.OfMethod<F extends TypeDescriptor.OfField<F>, M extends TypeDescriptor.OfMethod<F,M>>

Краткое описание методов

Модификатор и тип Метод Описание
MethodTypeDesc changeParameterType(int index, ClassDesc paramType)
Возвращает MethodTypeDesc, идентичный этому, за исключением того, что тип одного параметра изменён на указанный.
MethodTypeDesc changeReturnType(ClassDesc returnType)
Возвращает MethodTypeDesc, идентичный этому, за исключением указанного возвращаемого типа.
String descriptorString()
Возвращает строку-дескриптор типа метода.
default String displayDescriptor()
Возвращает удобочитаемый дескриптор данного типа метода, используя канонические имена параметров и возвращаемого типа.
MethodTypeDesc dropParameterTypes(int start, int end)
Возвращает MethodTypeDesc, идентичный этому, за исключением удалённого диапазона типов параметров.
boolean equals(Object o)
Сравнивает указанный объект с этим дескриптором на равенство.
MethodTypeDesc insertParameterTypes(int pos, ClassDesc... paramTypes)
Возвращает MethodTypeDesc, идентичный этому, за исключением вставленного диапазона дополнительных типов параметров.
static MethodTypeDesc of(ClassDesc returnDesc)
Возвращает MethodTypeDesc с заданным возвращаемым типом и без типов параметров.
static MethodTypeDesc of(ClassDesc returnDesc, ClassDesc... paramDescs)
Возвращает MethodTypeDesc с заданным возвращаемым типом и типами параметров.
static MethodTypeDesc of(ClassDesc returnDesc, List<ClassDesc> paramDescs)
Возвращает MethodTypeDesc с заданным возвращаемым типом и списком типов параметров.
static MethodTypeDesc ofDescriptor(String descriptor)
Создаёт MethodTypeDesc по строке-дескриптору метода.
ClassDesc[] parameterArray()
Возвращает типы параметров в виде массива.
int parameterCount()
Возвращает количество параметров типа метода, описанного данным MethodTypeDesc.
List<ClassDesc> parameterList()
Возвращает типы параметров как неизменяемый List.
ClassDesc parameterType(int index)
Возвращает тип параметра index-го параметра типа метода, описанного этим MethodTypeDesc.
MethodType resolveConstantDesc(MethodHandles.Lookup lookup)
Разрешает этот дескриптор рефлексивно, эмулируя поведение разрешения JVMS 5.4.3 и поведение контроля доступа JVMS 5.4.4.
ClassDesc returnType()
Получает возвращаемый тип типа метода, описанного данным MethodTypeDesc.

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

ofDescriptor

static MethodTypeDesc ofDescriptor(String descriptor)
Создаёт MethodTypeDesc по строке описания метода.
Параметры:
descriptor - строка описания метода
Возвращает:
MethodTypeDesc, описывающий требуемый тип метода
Исключения:
NullPointerException - если аргумент является null
IllegalArgumentException - если строка описания не является корректной строкой описания метода
См. Спецификацию Java Virtual Machine:
4.3.3 Описания методов

of

static MethodTypeDesc of(ClassDesc returnDesc)
Возвращает MethodTypeDesc с заданным типом возвращаемого значения и без параметров.
Параметры:
returnDesc - ClassDesc, описывающий тип возвращаемого значения
Возвращает:
MethodTypeDesc с заданным типом возвращаемого значения и без параметров
Исключения:
NullPointerException - если returnDesc является null
С:
21

of

static MethodTypeDesc of(ClassDesc returnDesc, List<ClassDesc> paramDescs)
Возвращает MethodTypeDesc по заданному типу возвращаемого значения и списку типов параметров.
Параметры:
returnDesc - ClassDesc, описывающий тип возвращаемого значения
paramDescs - Список ClassDescов, описывающих типы параметров
Возвращает:
MethodTypeDesc по заданному типу возвращаемого значения и списку типов параметров
Исключения:
NullPointerException - если любой аргумент или его содержимое является null
IllegalArgumentException - если любой элемент paramDescs является ClassDesc для void
С:
21

of

static MethodTypeDesc of(ClassDesc returnDesc, ClassDesc... paramDescs)
Возвращает MethodTypeDesc по заданному типу возвращаемого значения и типам параметров.
Параметры:
returnDesc - ClassDesc, описывающий тип возвращаемого значения
paramDescs - ClassDescы, описывающие типы аргументов
Возвращает:
MethodTypeDesc, описывающий требуемый тип метода
Исключения:
NullPointerException - если любой аргумент или его содержимое является null
IllegalArgumentException - если любой элемент paramDescs является ClassDesc для void

returnType

ClassDesc returnType()
Получает тип возвращаемого значения метода, описываемого этим MethodTypeDesc.
Определено в:
returnType в интерфейсе TypeDescriptor.OfMethod<ClassDesc, MethodTypeDesc>
Возвращает:
ClassDesc, описывающий тип возвращаемого значения метода

parameterCount

int parameterCount()
Возвращает количество параметров типа метода, описанного этим MethodTypeDesc.
Определено в:
parameterCount в интерфейсе TypeDescriptor.OfMethod<ClassDesc, MethodTypeDesc>
Возвращает:
количество параметров

parameterType

ClassDesc parameterType(int index)
Возвращает тип index-го параметра типа метода, описанного этим MethodTypeDesc.
Определено в:
parameterType в интерфейсе TypeDescriptor.OfMethod<ClassDesc, MethodTypeDesc>
Параметры:
index - индекс параметра для извлечения
Возвращает:
ClassDesc, описывающий требуемый тип параметра
Исключения:
IndexOutOfBoundsException - если индекс выходит за границы [0, parameterCount())

parameterList

List<ClassDesc> parameterList()
Возвращает типы параметров как неизменяемый List.
Определено в:
parameterList в интерфейсе TypeDescriptor.OfMethod<ClassDesc, MethodTypeDesc>
Возвращает:
List из ClassDesc, описывающих типы параметров

parameterArray

ClassDesc[] parameterArray()
Возвращает типы параметров в виде массива.
Определено в:
parameterArray в интерфейсе TypeDescriptor.OfMethod<ClassDesc, MethodTypeDesc>
Возвращает:
массив из ClassDesc, описывающих типы параметров

changeReturnType

MethodTypeDesc changeReturnType(ClassDesc returnType)
Возвращает MethodTypeDesc, идентичный этому, но с указанным типом возвращаемого значения.
Определено в:
changeReturnType в интерфейсе TypeDescriptor.OfMethod<ClassDesc, MethodTypeDesc>
Параметры:
returnType - ClassDesc, описывающий новый тип возвращаемого значения
Возвращает:
MethodTypeDesc, описывающий требуемый тип метода
Исключения:
NullPointerException - если аргумент является null

changeParameterType

MethodTypeDesc changeParameterType(int index, ClassDesc paramType)
Возвращает MethodTypeDesc, идентичный этому, но с изменением типа одного параметра на указанный.
Определено в:
changeParameterType в интерфейсе TypeDescriptor.OfMethod<ClassDesc, MethodTypeDesc>
Параметры:
index - индекс параметра для изменения
paramType - ClassDesc, описывающий новый тип параметра
Возвращает:
MethodTypeDesc, описывающий требуемый тип метода
Исключения:
NullPointerException - если любой аргумент является null
IndexOutOfBoundsException - если индекс выходит за границы [0, parameterCount)

dropParameterTypes

MethodTypeDesc dropParameterTypes(int start, int end)
Возвращает MethodTypeDesc, идентичный этому, но с удалением диапазона типов параметров.
Определено в:
dropParameterTypes в интерфейсе TypeDescriptor.OfMethod<ClassDesc, MethodTypeDesc>
Параметры:
start - индекс первого параметра для удаления
end - индекс после последнего параметра для удаления
Возвращает:
MethodTypeDesc, описывающий требуемый тип метода
Исключения:
IndexOutOfBoundsException - если start выходит за границы [0, parameterCount), или end выходит за границы [0, parameterCount], или если start > end

insertParameterTypes

MethodTypeDesc insertParameterTypes(int pos, ClassDesc... paramTypes)
Возвращает MethodTypeDesc, идентичный этому, за исключением вставки диапазона дополнительных типов параметров.
Указано в:
insertParameterTypes в интерфейсе TypeDescriptor.OfMethod<ClassDesc, MethodTypeDesc>
Параметры:
pos - индекс, на котором следует вставить первый вставляемый параметр
paramTypes - ClassDesc описывающие новые типы параметров для вставки
Возвращает:
MethodTypeDesc описывающий желаемый тип метода
Выбрасывает:
NullPointerException - если какой-либо аргумент или его содержимое null
IndexOutOfBoundsException - если pos находится вне закрытого диапазона [0, parameterCount]
IllegalArgumentException - если любой элемент paramTypes является ClassDesc для void

descriptorString

String descriptorString()
Возвращает строку-описание типа метода.
Указано в:
descriptorString в интерфейсе TypeDescriptor
Возвращает:
строку-описание типа метода
См. Спецификацию виртуальной машины Java:
4.3.3 Описания методов

displayDescriptor

default String displayDescriptor()
Возвращает удобочитаемое описание этого типа метода, используя канонические имена для типов параметров и возвращаемого значения.
Возвращает:
удобочитаемое описание этого типа метода

resolveConstantDesc

MethodType resolveConstantDesc(MethodHandles.Lookup lookup) throws ReflectiveOperationException
Разрешает это описание рефлексивно, эмулируя поведение разрешения JVMS 5.4.3 и поведение управления доступом JVMS 5.4.4. Контекст разрешения и управления доступом предоставляется параметром MethodHandles.Lookup. Кэширование полученного значения не выполняется.
Указано в:
resolveConstantDesc в интерфейсе ConstantDesc
Примечание API:
MethodTypeDesc может представлять описания типов методов, не представимые с помощью MethodType, такие как методы с более чем 255 слотами параметров, поэтому попытки разрешить их могут привести к ошибкам.
Параметры:
lookup - MethodHandles.Lookup для предоставления контекста разрешения имен и управления доступом
Возвращает:
разрешенное значение константы
Выбрасывает:
ReflectiveOperationException - если класс, метод или поле не удалось рефлексивно разрешить в ходе разрешения
С:
21

equals

boolean equals(Object o)
Сравнивает указанный объект с этим описанием на предмет равенства. Возвращает true тогда и только тогда, когда указанный объект также является MethodTypeDesc оба имеют одинаковую арность, их типы возвращаемого значения равны, и каждая пара соответствующих типов параметров равны.
Переопределяет:
equals в классе Object
Параметры:
o - другой объект
Возвращает:
является ли это описание равным другому объекту
См. Также:
  • Object.hashCode()
  • HashMap

© 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/constant/MethodTypeDesc.html

Spec-Zone.ru

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