Интерфейс 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
Краткое описание вложенных классов
Вложенные классы/интерфейсы, объявленные в интерфейсе java.lang.invoke.TypeDescriptor
TypeDescriptor.OfField<F extends TypeDescriptor.OfField<F>>, TypeDescriptor.OfMethod<F extends TypeDescriptor.OfField<F>, M extends TypeDescriptor.OfMethod<F, M>>
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
M |
changeParameterType |
Возвращает дескриптор метода, идентичный этому, за исключением того, что тип одного параметра был изменён на указанный тип. |
M |
changeReturnType |
Возвращает дескриптор метода, идентичный этому, за исключением того, что тип возвращаемого значения был изменён на указанный тип |
M |
dropParameterTypes |
Возвращает дескриптор метода, идентичный этому, за исключением того, что диапазон типов параметров был удалён. |
M |
insertParameterTypes |
Возвращает дескриптор метода, идентичный этому, за исключением того, что диапазон дополнительных типов параметров был добавлен. |
F[] |
parameterArray() |
Возвращает массив дескрипторов полей для типов параметров типа метода, описанного этим дескриптором |
int |
parameterCount() |
Возвращает количество параметров в типе метода |
List<F> |
parameterList() |
Возвращает неизменяемый список дескрипторов полей для типов параметров типа метода, описанного этим дескриптором |
F |
parameterType |
Возвращает дескриптор поля, описывающий запрашиваемый параметр типа метода, описанного этим дескриптором |
F |
returnType() |
Возвращает дескриптор поля, описывающий тип возвращаемого значения типа метода, описанного этим дескриптором |
Методы, объявленные в интерфейсе java.lang.invoke.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]}
© 1993, 2021, 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/17/docs/api/java.base/java/lang/invoke/TypeDescriptor.OfMethod.html