Интерфейс MethodTypeDesc
- Все суперинтерфейсы:
-
ConstantDesc,TypeDescriptor,TypeDescriptor.OfMethod<ClassDesc,MethodTypeDesc>
public sealed interface MethodTypeDesc extends ConstantDesc, TypeDescriptor.OfMethod<ClassDesc,MethodTypeDesc>
Номинальный описатель для константы 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 |
Возвращает MethodTypeDesc, идентичный этому, за исключением одного параметра типа, который был изменён на указанный. |
MethodTypeDesc |
changeReturnType |
Возвращает MethodTypeDesc, идентичный этому, но с указанным типом возвращаемого значения. |
default String |
descriptorString() |
Возвращает строку описания типа метода. |
default String |
displayDescriptor() |
Возвращает удобочитаемое описание этого типа метода, используя канонические имена параметров и типа возвращаемого значения. |
MethodTypeDesc |
dropParameterTypes |
Возвращает MethodTypeDesc, идентичный этому, за исключением удаления диапазона типов параметров. |
boolean |
equals |
Сравнивает указанный объект с этим описателем на равенство. |
MethodTypeDesc |
insertParameterTypes |
Возвращает MethodTypeDesc, идентичный этому, за исключением вставки диапазона дополнительных типов параметров. |
static MethodTypeDesc |
of |
Возвращает MethodTypeDesc на основе типа возвращаемого значения и типов параметров. |
static MethodTypeDesc |
ofDescriptor |
Создаёт MethodTypeDesc на основе строки описания метода. |
ClassDesc[] |
parameterArray() |
Возвращает типы параметров в виде массива. |
int |
parameterCount() |
Возвращает количество параметров типа метода, описанного этим MethodTypeDesc. |
List<ClassDesc> |
parameterList() |
Возвращает типы параметров как неизменяемый List. |
ClassDesc |
parameterType |
Возвращает тип параметра index-го параметра типа метода, описанного этим MethodTypeDesc. |
ClassDesc |
returnType() |
Возвращает тип возвращаемого значения типа метода, описанного этим MethodTypeDesc. |
Методы, объявленные в интерфейсе java.lang.constant.ConstantDesc
resolveConstantDesc
Подробное описание методов
ofDescriptor
static MethodTypeDesc ofDescriptor(String descriptor)
Создаёт MethodTypeDesc по строке описания метода.
- Параметры:
-
descriptor- строка описания метода - Возвращает:
- MethodTypeDesc описывающий требуемый тип метода
- Исключение:
-
NullPointerException- если аргументnull -
IllegalArgumentException- если строка описания не является допустимым описанием метода - См. Спецификацию виртуальной машины Java:
- 4.3.3 Описания методов
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> - Возвращает:
ListClassDescописывающих типы параметров
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
default String descriptorString()
Возвращает строку описания типа метода.
- Определено в:
-
descriptorStringв интерфейсеTypeDescriptor - Возвращает:
- строку описания типа метода
- См. Спецификацию виртуальной машины Java:
- 4.3.3 Описания методов
displayDescriptor
default String displayDescriptor()
Возвращает удобочитаемое описание типа метода, используя канонические имена для типов параметров и возвращаемого значения.
- Возвращает:
- удобочитаемое описание типа метода
equals
boolean equals(Object o)
Сравнивает указанный объект с этим описанием на равенство. Возвращает
true тогда и только тогда, когда указанный объект также является MethodTypeDesc, оба имеют одинаковую арность, их типы возвращаемых значений равны, и каждая пара соответствующих типов параметров равна.- Переопределяет:
-
equalsв классеObject - Параметры:
-
o- другой объект - Возвращает:
- равно ли это описание другому объекту
- См. также:
© 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/constant/MethodTypeDesc.html