Spec-Zone.ru › OpenJDK 21

Класс MethodType

java.lang.Object
java.lang.invoke.MethodType
Все реализованные интерфейсы:
Serializable, Constable, TypeDescriptor, TypeDescriptor.OfMethod<Class<?>,MethodType>
public final class MethodType extends Object implements Constable, TypeDescriptor.OfMethod<Class<?>,MethodType>, Serializable
Тип метода представляет аргументы и возвращаемый тип, принимаемые и возвращаемые обработчиком метода, или аргументы и возвращаемый тип, передаваемые и ожидаемые вызывающим обработчиком метода. Типы методов должны быть правильно сопоставлены между обработчиком метода и всеми его вызывающими сторонами, и операции JVM обеспечивают это соответствие, в частности, во время вызовов MethodHandle.invokeExact и MethodHandle.invoke, и во время выполнения инструкций invokedynamic.

Структура представляет собой возвращаемый тип, сопровождаемый любым количеством типов параметров. Типы (примитивные, void, и ссылочные) представлены объектами Class. (Для простоты изложения мы рассматриваем void как если бы это был тип. На самом деле, он обозначает отсутствие возвращаемого типа.)

Все экземпляры MethodType неизменяемы. Два экземпляра полностью взаимозаменяемы, если они равны. Равенство зависит от взаимно-однозначного соответствия возвращаемого и типов параметров и ни от чего больше.

Этот тип может быть создан только методами-фабриками. Все методы-фабрики могут кэшировать значения, хотя кэширование не гарантируется. Некоторые методы-фабрики являются статическими, а другие — виртуальными методами, которые изменяют прекурсорные типы методов, например, путем изменения выбранного параметра.

Методы-фабрики, которые работают с группами типов параметров, систематически представлены в двух версиях, так что для работы с группами типов параметров можно использовать как массивы Java, так и списки Java. Методы запроса parameterArray и parameterList также предоставляют выбор между массивами и списками.

Объекты MethodType иногда выводятся из инструкций байткода, таких как invokedynamic, в частности, из строк описания типов, связанных с инструкциями в пуле констант файла класса.

Как классы и строки, типы методов также могут быть представлены непосредственно в пуле констант файла класса в виде констант. Тип метода может быть загружен инструкцией ldc, которая ссылается на соответствующую запись пула констант CONSTANT_MethodType. Запись ссылается на CONSTANT_Utf8 написание строки-дескриптора. (Полные сведения о константах типа метода см. в разделах 4.4.8 и 5.4.3.5 спецификации виртуальной машины Java.)

Когда JVM материализует MethodType из строки-дескриптора, все классы, указанные в дескрипторе, должны быть доступны и будут загружены. (Но классы не обязательно должны быть инициализированы, как это происходит с CONSTANT_Class.) Эта загрузка может произойти в любое время до того, как объект MethodType будет впервые получен.

Номинальные дескрипторы

Тип MethodType может быть описан в номинальной форме только в том случае, если все типы параметров и возвращаемый тип могут быть описаны с помощью nominal descriptor, представленного ClassDesc. Если тип метода может быть описан номинально, то:

  • Тип метода имеет nominal descriptor, возвращаемый MethodType::describeConstable.
  • Строка-дескриптор, возвращаемая MethodType::descriptorString или MethodType::toMethodDescriptorString для типа метода, является дескриптором метода (JVMS 4.3.3).

Если любой из типов параметров или возвращаемый тип не может быть описан номинально, т. е. Class::describeConstable возвращает пустой необязательный параметр для этого типа, то тип метода не может быть описан номинально:

  • Тип метода не имеет nominal descriptor и MethodType::describeConstable возвращает пустой необязательный параметр.
  • Строка-дескриптор, возвращаемая MethodType::descriptorString или MethodType::toMethodDescriptorString для типа метода, не является дескриптором типа.
С момента:
1.7
См. также:
  • Сериализованная форма

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

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

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

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

Модификатор и тип Метод Описание
MethodType appendParameterTypes(Class<?>... ptypesToInsert)
Находит или создаёт тип метода с дополнительными типами параметров.
MethodType appendParameterTypes(List<Class<?>> ptypesToInsert)
Находит или создаёт тип метода с дополнительными типами параметров.
MethodType changeParameterType(int num, Class<?> nptype)
Находит или создаёт тип метода с одним отличным типом параметра.
MethodType changeReturnType(Class<?> nrtype)
Находит или создаёт тип метода с другим типом возвращаемого значения.
Optional<MethodTypeDesc> describeConstable()
Возвращает номинальный дескриптор для этого экземпляра, если его можно создать, или пустой Optional, если его создать нельзя.
String descriptorString()
Возвращает строку-дескриптор для этого типа метода.
MethodType dropParameterTypes(int start, int end)
Находит или создаёт тип метода с некоторыми опущенными типами параметров.
boolean equals(Object x)
Сравнивает указанный объект с этим типом для проверки равенства.
MethodType erase()
Стирает все типы ссылок до Object.
static MethodType fromMethodDescriptorString(String descriptor, ClassLoader loader)
Находит или создаёт экземпляр типа метода заданного дескриптора метода (JVMS 4.3.3).
MethodType generic()
Преобразует все типы, как ссылки, так и примитивные, в Object.
static MethodType genericMethodType(int objectArgCount)
Находит или создаёт тип метода, все компоненты которого являются Object.
static MethodType genericMethodType(int objectArgCount, boolean finalArray)
Находит или создаёт тип метода, компоненты которого являются Object, с необязательным заключительным массивом Object[].
int hashCode()
Возвращает хэш-код для этого типа метода.
boolean hasPrimitives()
Отмечает, содержит ли этот тип примитивный аргумент или возвращаемое значение.
boolean hasWrappers()
Отмечает, содержит ли этот тип оболочечный аргумент или возвращаемое значение.
MethodType insertParameterTypes(int num, Class<?>... ptypesToInsert)
Находит или создаёт тип метода с дополнительными типами параметров.
MethodType insertParameterTypes(int num, List<Class<?>> ptypesToInsert)
Находит или создаёт тип метода с дополнительными типами параметров.
Class<?> lastParameterType()
Возвращает последний тип параметра этого типа метода.
static MethodType methodType(Class<?> rtype)
Находит или создаёт тип метода с заданными компонентами.
static MethodType methodType(Class<?> rtype, Class<?> ptype0)
Находит или создаёт тип метода с заданными компонентами.
static MethodType methodType(Class<?> rtype, Class<?>[] ptypes)
Находит или создаёт экземпляр заданного типа метода.
static MethodType methodType(Class<?> rtype, Class<?> ptype0, Class<?>... ptypes)
Находит или создаёт тип метода с заданными компонентами.
static MethodType methodType(Class<?> rtype, MethodType ptypes)
Находит или создаёт тип метода с заданными компонентами.
static MethodType methodType(Class<?> rtype, List<Class<?>> ptypes)
Находит или создаёт тип метода с заданными компонентами.
Class<?>[] parameterArray()
Представляет типы параметров в виде массива (удобный метод).
int parameterCount()
Возвращает количество типов параметров в этом типе метода.
List<Class<?>> parameterList()
Представляет типы параметров в виде списка (удобный метод).
Class<?> parameterType(int num)
Возвращает тип параметра по указанному индексу в этом типе метода.
Class<?> returnType()
Возвращает тип возвращаемого значения этого типа метода.
String toMethodDescriptorString()
Возвращает строку-дескриптор для этого типа метода.
String toString()
Возвращает строковое представление типа метода в формате "(PT0,PT1...)RT".
MethodType unwrap()
Преобразует все оболочечные типы в соответствующие примитивные типы.
MethodType wrap()
Преобразует все примитивные типы в соответствующие оболочечные типы.

Методы, объявленные в классе java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

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

methodType

public static MethodType methodType(Class<?> rtype, Class<?>[] ptypes)
Находит или создаёт экземпляр указанного типа метода.
Параметры:
rtype - тип возвращаемого значения
ptypes - типы параметров
Возвращает:
тип метода с заданными компонентами
Исключения:
NullPointerException - если rtype или ptypes или любой элемент ptypes равен null
IllegalArgumentException - если любой элемент ptypes равен void.class

methodType

public static MethodType methodType(Class<?> rtype, List<Class<?>> ptypes)
Находит или создаёт тип метода с заданными компонентами. Удобный метод для methodType.
Параметры:
rtype - тип возвращаемого значения
ptypes - типы параметров
Возвращает:
тип метода с заданными компонентами
Исключения:
NullPointerException - если rtype или ptypes или любой элемент ptypes равен null
IllegalArgumentException - если любой элемент ptypes равен void.class

methodType

public static MethodType methodType(Class<?> rtype, Class<?> ptype0, Class<?>... ptypes)
Находит или создаёт тип метода с заданными компонентами. Удобный метод для methodType. Тип ведущего параметра добавляется в начало остального массива.
Параметры:
rtype - тип возвращаемого значения
ptype0 - тип первого параметра
ptypes - оставшиеся типы параметров
Возвращает:
тип метода с заданными компонентами
Исключения:
NullPointerException - если rtype или ptype0 или ptypes или любой элемент ptypes равен null
IllegalArgumentException - если ptype0 или ptypes или любой элемент ptypes равен void.class

methodType

public static MethodType methodType(Class<?> rtype)
Находит или создаёт тип метода с заданными компонентами. Удобный метод для methodType. Результирующий метод не имеет типов параметров.
Параметры:
rtype - тип возвращаемого значения
Возвращает:
тип метода с заданным значением возврата
Исключения:
NullPointerException - если rtype равен null

methodType

public static MethodType methodType(Class<?> rtype, Class<?> ptype0)
Находит или создаёт тип метода с заданными компонентами. Удобный метод для methodType. Результирующий метод имеет единственный заданный тип параметра.
Параметры:
rtype - тип возвращаемого значения
ptype0 - тип параметра
Возвращает:
тип метода с заданным значением возврата и типом параметра
Исключения:
NullPointerException - если rtype или ptype0 равны null
IllegalArgumentException - если ptype0 равен void.class

methodType

public static MethodType methodType(Class<?> rtype, MethodType ptypes)
Находит или создаёт тип метода с заданными компонентами. Удобный метод для methodType. Результирующий метод имеет те же типы параметров, что и ptypes, и указанный тип возврата.
Параметры:
rtype - тип возвращаемого значения
ptypes - тип метода, предоставляющий типы параметров
Возвращает:
тип метода с заданными компонентами
Исключения:
NullPointerException - если rtype или ptypes равны null

genericMethodType

public static MethodType genericMethodType(int objectArgCount, boolean finalArray)
Находит или создаёт тип метода, компоненты которого составляют Object с необязательным заключительным массивом Object[]. Удобный метод для methodType. Все параметры и тип возвращаемого значения будут Object, за исключением конечного массива параметров, если он есть, который будет Object[].
Параметры:
objectArgCount - количество параметров (без учёта конечного массива параметров, если он есть)
finalArray - наличие заключительного массива параметров типа Object[]
Возвращает:
обобщённый тип метода, подходящий для всех вызовов с заданным количеством аргументов и собранным массивом дополнительных аргументов
Исключения:
IllegalArgumentException - если objectArgCount отрицательно или больше 255 (или 254, если finalArray истинно)
См. также:
  • genericMethodType(int)

genericMethodType

public static MethodType genericMethodType(int objectArgCount)
Находит или создаёт тип метода, компоненты которого все Object. Удобный метод для methodType. Все параметры и тип возвращаемого значения будут Object.
Параметры:
objectArgCount - количество параметров
Возвращает:
обобщённый тип метода, подходящий для всех вызовов с заданным количеством аргументов
Исключения:
IllegalArgumentException - если objectArgCount отрицательно или больше 255
См. также:
  • genericMethodType(int, boolean)

changeParameterType

public MethodType changeParameterType(int num, Class<?> nptype)
Находит или создаёт тип метода с единственным изменённым типом параметра. Удобный метод для methodType.
Определено в:
changeParameterType в интерфейсе TypeDescriptor.OfMethod<Class<?>,MethodType>
Параметры:
num - индекс (нумерация с нуля) типа параметра для изменения
nptype - новый тип параметра для замены старого
Возвращает:
тот же тип, но с изменённым выбранным параметром
Исключения:
IndexOutOfBoundsException - если num не является допустимым индексом в parameterArray()
IllegalArgumentException - если nptype равен void.class
NullPointerException - если nptype равен null

insertParameterTypes

public MethodType insertParameterTypes(int num, Class<?>... ptypesToInsert)
Находит или создаёт тип метода с дополнительными типами параметров. Удобный метод для methodType.
Определено в:
insertParameterTypes в интерфейсе TypeDescriptor.OfMethod<Class<?>,MethodType>
Параметры:
num - позиция (нумерация с нуля) вставляемых типов параметров
ptypesToInsert - ноль или более новых типов параметров для вставки в список параметров
Возвращает:
тот же тип, но с добавленными параметрами
Исключения:
IndexOutOfBoundsException - если num отрицательно или больше parameterCount()
IllegalArgumentException - если любой элемент ptypesToInsert равен void.class или если результирующий тип метода будет иметь более 255 слотов параметров
NullPointerException - если ptypesToInsert или любой из его элементов равен null

appendParameterTypes

public MethodType appendParameterTypes(Class<?>... ptypesToInsert)
Находит или создаёт тип метода с дополнительными типами параметров. Удобный метод для methodType.
Параметры:
ptypesToInsert - ноль или более новых типов параметров для вставки в конец списка параметров
Возвращает:
тот же тип, но с добавленными параметрами
Исключения:
IllegalArgumentException - если любой элемент ptypesToInsert равен void.class или если результирующий тип метода будет иметь более 255 слотов параметров
NullPointerException - если ptypesToInsert или любой из его элементов равен null

insertParameterTypes

public MethodType insertParameterTypes(int num, List<Class<?>> ptypesToInsert)
Находит или создаёт тип метода с дополнительными типами параметров. Удобный метод для methodType.
Параметры:
num - позиция (нумерация с нуля) вставляемых типов параметров
ptypesToInsert - ноль или более новых типов параметров для вставки в список параметров
Возвращает:
тот же тип, но с добавленными параметрами
Исключения:
IndexOutOfBoundsException - если num отрицательно или больше parameterCount()
IllegalArgumentException - если любой элемент ptypesToInsert равен void.class или если результирующий тип метода будет иметь более 255 слотов параметров
NullPointerException - если ptypesToInsert или любой из его элементов равен null

appendParameterTypes

public MethodType appendParameterTypes(List<Class<?>> ptypesToInsert)
Находит или создаёт тип метода с дополнительными типами параметров. Удобный метод для methodType.
Параметры:
ptypesToInsert - ноль или более новых типов параметров для вставки в конец списка параметров
Возвращает:
тот же тип, но с добавленными параметрами
Исключения:
IllegalArgumentException - если любой элемент ptypesToInsert равен void.class или если результирующий тип метода будет иметь более 255 слотов параметров
NullPointerException - если ptypesToInsert или любой из его элементов равен null

dropParameterTypes

public MethodType dropParameterTypes(int start, int end)
Находит или создает тип метода с пропущенными типами параметров. Удобный метод для methodType.
Определено в:
dropParameterTypes в интерфейсе TypeDescriptor.OfMethod<Class<?>,MethodType>
Параметры:
start - индекс (нумерация с нуля) первого типа параметра для удаления
end - индекс (больше чем start) первого типа параметра после, который не нужно удалять
Возвращает:
тот же тип, за исключением удаленных параметров
Исключение:
IndexOutOfBoundsException - если start отрицательное или больше чем parameterCount(), или если end отрицательное или больше чем parameterCount(), или если start больше чем end

changeReturnType

public MethodType changeReturnType(Class<?> nrtype)
Находит или создает тип метода с другим типом возвращаемого значения. Удобный метод для methodType.
Определено в:
changeReturnType в интерфейсе TypeDescriptor.OfMethod<Class<?>,MethodType>
Параметры:
nrtype - тип возвращаемого параметра, которым нужно заменить старый
Возвращает:
тот же тип, за исключением изменения типа возвращаемого значения
Исключение:
NullPointerException - если nrtype равно null

hasPrimitives

public boolean hasPrimitives()
Указывает, содержит ли этот тип примитивный аргумент или возвращаемое значение. Тип возвращаемого значения void считается примитивным.
Возвращает:
true, если любой из типов является примитивным

hasWrappers

public boolean hasWrappers()
Указывает, содержит ли этот тип обёртку аргумента или возвращаемого значения. Обёртки — это типы, которые упаковывают примитивные значения, например, Integer. Ссылочный тип java.lang.Void считается оберткой, если он встречается как тип возвращаемого значения.
Возвращает:
true, если любой из типов является оберткой

erase

public MethodType erase()
Удаляет все ссылочные типы до Object. Удобный метод для methodType. Все примитивные типы (включая void) останутся неизменными.
Возвращает:
версия исходного типа со всеми ссылочными типами, заменёнными

generic

public MethodType generic()
Преобразует все типы, как ссылочные, так и примитивные, в Object. Удобный метод для genericMethodType. Выражение type.wrap().erase() производит то же значение, что и type.generic().
Возвращает:
версия исходного типа со всеми типами, заменёнными

wrap

public MethodType wrap()
Преобразует все примитивные типы в соответствующие типы обёрток. Удобный метод для methodType. Все ссылочные типы (включая типы обёрток) останутся неизменными. Тип возвращаемого значения void изменяется на тип java.lang.Void. Выражение type.wrap().erase() производит то же значение, что и type.generic().
Возвращает:
версия исходного типа со всеми примитивными типами, заменёнными

unwrap

public MethodType unwrap()
Преобразует все типы обёрток в соответствующие примитивные типы. Удобный метод для methodType. Все примитивные типы (включая void) останутся неизменными. Тип возвращаемого значения java.lang.Void изменяется на void.
Возвращает:
версия исходного типа со всеми типами обёрток, заменёнными

parameterType

public Class<?> parameterType(int num)
Возвращает тип параметра по указанному индексу в этом типе метода.
Определено в:
parameterType в интерфейсе TypeDescriptor.OfMethod<Class<?>,MethodType>
Параметры:
num - индекс (нумерация с нуля) нужного типа параметра
Возвращает:
выбранный тип параметра
Исключение:
IndexOutOfBoundsException - если num не является допустимым индексом в parameterArray()

parameterCount

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

returnType

public Class<?> returnType()
Возвращает тип возвращаемого значения этого типа метода.
Определено в:
returnType в интерфейсе TypeDescriptor.OfMethod<Class<?>,MethodType>
Возвращает:
тип возвращаемого значения

parameterList

public List<Class<?>> parameterList()
Представляет типы параметров в виде списка (удобный метод). Список будет неизменяемым.
Определено в:
parameterList в интерфейсе TypeDescriptor.OfMethod<Class<?>,MethodType>
Возвращает:
типы параметров (в виде неизменяемого списка)

lastParameterType

public Class<?> lastParameterType()
Возвращает последний тип параметра этого типа метода. Если у этого типа нет параметров, вместо этого возвращается значение-маркер void.class.
Примечание API:

Значение-маркер выбрано таким образом, чтобы рефлексивные запросы могли быть сделаны непосредственно к результатному значению. Значение-маркер не может быть перепутано с реальным параметром, так как void никогда не является допустимым типом параметра. Для режимов вызова с переменным числом аргументов полезно выражение lastParameterType().getComponentType() для запроса типа параметра "varargs".

Возвращает:
последний тип параметра, если он есть, иначе void.class
С:
10

parameterArray

public Class<?>[] parameterArray()
Представляет типы параметров в виде массива (удобный метод). Изменения в массиве не приведут к изменениям в типе.
Определено в:
parameterArray в интерфейсе TypeDescriptor.OfMethod<Class<?>,MethodType>
Возвращает:
типы параметров (в виде свежей копии, если необходимо)

equals

public boolean equals(Object x)
Сравнивает указанный объект с этим типом на равенство. То есть, возвращает true тогда и только тогда, когда указанный объект также является типом метода с точно такими же параметрами и типом возвращаемого значения.
Переопределяет:
equals в классе Object
Параметры:
x - объект для сравнения
Возвращает:
true если этот объект такой же как аргумент obj; false в противном случае.
См. также:
  • Object.equals(Object)

hashCode

public int hashCode()
Возвращает значение хэша для этого типа метода. Определено так же, как хэш-код списка, чьи элементы — тип возвращаемого значения, за которым следуют типы параметров.
Переопределяет:
hashCode в классе Object
Возвращает:
значение хэша для этого типа метода
См. также:
  • Object.hashCode()
  • equals(Object)
  • List.hashCode()

toString

public String toString()
Возвращает строковое представление типа метода в формате "(PT0,PT1...)RT". Строковое представление типа метода — это заключённый в скобки, разделённый запятыми список имён типов, непосредственно за которым следует тип возвращаемого значения.

Каждое имя типа представлено его simple name.

Переопределяет:
toString в классе Object
Возвращает:
строковое представление объекта.

fromMethodDescriptorString

public static MethodType fromMethodDescriptorString(String descriptor, ClassLoader loader) throws IllegalArgumentException, TypeNotPresentException
Находит или создает экземпляр типа метода по заданному описанию метода (JVMS 4.3.3). Этот метод является удобным методом для methodType. Любое имя класса или интерфейса, вставленное в строку описания, будет разрешено с помощью заданного загрузчика (или, если он null, с помощью системного загрузчика классов).
Примечание API:
Возможны типы методов, имеющие допустимые описания, но не могут быть построены этим методом, потому что их составные типы не видны из общего загрузчика классов.

Этот метод включён для удобства приложений, которые должны генерировать байткоды, обрабатывающие дескрипторы методов и invokedynamic.

Параметры:
descriptor - строка описания метода
loader - загрузчик классов для поиска типов
Возвращает:
тип метода по заданному описанию метода
Исключение:
NullPointerException - если строка null
IllegalArgumentException - если строка не является описанием метода
TypeNotPresentException - если именованный тип не найден
SecurityException - если менеджер безопасности присутствует и loader null и у вызывающего объекта нет разрешения RuntimePermission("getClassLoader")
См. Спецификацию Java Virtual Machine:
4.3.3 Описания методов

toMethodDescriptorString

public String toMethodDescriptorString()
Возвращает строку-описатель для этого типа метода. Этот метод эквивалентен вызову MethodType::descriptorString.
Примечание API:
Это не строгая обратная функция для fromMethodDescriptorString, которая требует описателя типа метода (JVMS 4.3.3) и соответствующего аргумента загрузчика классов. Два различных объекта MethodType могут иметь идентичную строку описателя, так как разные классы могут иметь одинаковое имя, но разные загрузчики классов.

Этот метод включен для удобства приложений, которые должны генерировать байткоды, обрабатывающие дескрипторы методов и invokedynamic.

Возвращает:
строку-описатель для этого типа метода
См. Спецификацию виртуальной машины Java:
4.3.3 Описатели методов
См. также:
  • Номинальный описатель для MethodType

descriptorString

public String descriptorString()
Возвращает строку-описатель для этого типа метода.

Если этот тип метода может быть номинально описан, то результатом является описатель типа метода (JVMS 4.3.3). MethodTypeDesc для этого типа метода можно получить, вызвав MethodTypeDesc::ofDescriptor со строкой результирующего описателя.

Если этот тип метода нельзя номинально описать, и результатом является строка вида:

"(<parameter-descriptors>)<return-descriptor>"
где <parameter-descriptors> — конкатенация строки-описателя всех типов параметров и строки-описателя типа возвращаемого значения. Из этой результирующей строки нельзя получить MethodTypeDesc.
Определено в:
descriptorString в интерфейсе TypeDescriptor
Возвращает:
строку-описатель для этого типа метода
См. Спецификацию виртуальной машины Java:
4.3.3 Описатели методов
С:
12
См. также:
  • Номинальный описатель для MethodType

describeConstable

public Optional<MethodTypeDesc> describeConstable()
Возвращает номинальный описатель для этого экземпляра, если он может быть создан, или пустой Optional, если его нельзя создать.
Определено в:
describeConstable в интерфейсе Constable
Возвращает:
An Optional содержащий результирующий номинальный описатель или пустой Optional, если его нельзя создать.
С:
12
См. также:
  • Номинальный описатель для MethodType

© 1993, 2023, 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/21/docs/api/java.base/java/lang/invoke/MethodType.html

Spec-Zone.ru

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