Spec-Zone.ru › OpenJDK 25

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

Параметры типа:
F - тип, представляющий дескрипторы типов полей
M - класс, реализующий TypeDescriptor.OfMethod
Все суперинтерфейсы:
TypeDescriptor
Все известные подинтерфейсы:
MethodTypeDesc
Все известные реализующие классы:
MethodType
Внешний интерфейс:
TypeDescriptor
public static interface TypeDescriptor.OfMethod<F extends TypeDescriptor.OfField<F>, M extends TypeDescriptor.OfMethod<F,M>> extends TypeDescriptor
Сущность, имеющая дескриптор типа метода. Дескрипторы методов, соответствующие JVMS 4.3.3, могут быть описаны номинально с помощью MethodType::describeConstable; в противном случае их нельзя описать номинально.
См. Спецификацию виртуальной машины Java:
4.3.2 Дескрипторы полей
4.3.3 Дескрипторы методов
Начиная с:
12

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

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

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

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

Модификатор и тип Метод Описание
M changeParameterType(int index, F paramType)
Возвращает дескриптор метода, идентичный этому, за исключением того, что тип одного параметра изменён на указанный тип.
M changeReturnType(F newReturn)
Возвращает дескриптор метода, идентичный этому, за исключением того, что тип возвращаемого значения изменён на указанный тип
M dropParameterTypes(int start, int end)
Возвращает дескриптор метода, идентичный этому, за исключением того, что удалён диапазон типов параметров.
M insertParameterTypes(int pos, F... paramTypes)
Возвращает дескриптор метода, идентичный этому, за исключением того, что добавлен диапазон дополнительных типов параметров.
F[] parameterArray()
Возвращает массив дескрипторов полей для типов параметров типа метода, описанного этим дескриптором
int parameterCount()
Возвращает количество параметров типа метода
List<F> parameterList()
Возвращает неизменяемый список дескрипторов полей для типов параметров типа метода, описанного этим дескриптором
F parameterType(int i)
Возвращает дескриптор поля, описывающий запрошенный параметр типа метода, описанного этим дескриптором
F returnType()
Возвращает дескриптор поля, описывающий тип возвращаемого значения типа метода, описанного этим дескриптором

Методы, объявленные в интерфейсе TypeDescriptor

descriptorString

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

parameterCount

int parameterCount()
Возвращает количество параметров типа метода
Возвращает:
количество параметров

parameterType

F parameterType(int i)
Возвращает дескриптор поля, описывающий запрошенный параметр типа метода, описанного этим дескриптором
Параметры:
i - индекс параметра
Возвращает:
дескриптор поля для запрошенного типа параметра
Вызывает исключение:
IndexOutOfBoundsException - если индекс находится вне полуоткрытого диапазона {[0, parameterCount)}

returnType

F returnType()
Возвращает дескриптор поля, описывающий тип возвращаемого значения типа метода, описанного этим дескриптором
Возвращает:
дескриптор поля для типа возвращаемого значения

parameterArray

F[] parameterArray()
Возвращает массив дескрипторов полей для типов параметров типа метода, описанного этим дескриптором
Возвращает:
дескрипторы полей для типов параметров

parameterList

List<F> parameterList()
Возвращает неизменяемый список дескрипторов полей для типов параметров типа метода, описанного этим дескриптором
Возвращает:
дескрипторы полей для типов параметров

changeReturnType

M changeReturnType(F newReturn)
Возвращает дескриптор метода, идентичный этому, за исключением того, что тип возвращаемого значения изменён на указанный тип
Параметры:
newReturn - дескриптор поля для нового типа возвращаемого значения
Возвращает:
новый дескриптор метода
Вызывает исключение:
NullPointerException - если какой-либо аргумент является null

changeParameterType

M changeParameterType(int index, F paramType)
Возвращает дескриптор метода, идентичный этому, за исключением того, что тип одного параметра изменён на указанный тип.
Параметры:
index - индекс изменяемого параметра
paramType - дескриптор поля, описывающий новый тип параметра
Возвращает:
новый дескриптор метода
Вызывает исключение:
NullPointerException - если какой-либо аргумент является null
IndexOutOfBoundsException - если индекс находится вне полуоткрытого диапазона {[0, parameterCount)}

dropParameterTypes

M dropParameterTypes(int start, int end)
Возвращает дескриптор метода, идентичный этому, за исключением того, что удалён диапазон типов параметров.
Параметры:
start - индекс первого удаляемого параметра
end - индекс после последнего удаляемого параметра
Возвращает:
новый дескриптор метода
Вызывает исключение:
IndexOutOfBoundsException - если start находится вне полуоткрытого диапазона [0, parameterCount), или end находится вне замкнутого диапазона [0, parameterCount], или если start > end

insertParameterTypes

M insertParameterTypes(int pos, F... paramTypes)
Возвращает дескриптор метода, идентичный этому, за исключением того, что добавлен диапазон дополнительных типов параметров.
Параметры:
pos - индекс, по которому вставляется первый добавляемый параметр
paramTypes - дескрипторы полей, описывающие новые типы параметров для вставки
Возвращает:
новый дескриптор метода
Вызывает исключение:
NullPointerException - если какой-либо аргумент является null
IndexOutOfBoundsException - если pos находится вне замкнутого диапазона {[0, parameterCount]}

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/lang/invoke/TypeDescriptor.OfMethod.html

Spec-Zone.ru

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