MethodHandles.Lookup.FindStatic(Class, String, MethodType) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Создает дескриптор метода для статического метода.
[Android.Runtime.Register("findStatic", "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;", "", ApiSince=26)]
public Java.Lang.Invoke.MethodHandle FindStatic (Java.Lang.Class refc, string name, Java.Lang.Invoke.MethodType type);
[<Android.Runtime.Register("findStatic", "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;", "", ApiSince=26)>]
member this.FindStatic : Java.Lang.Class * string * Java.Lang.Invoke.MethodType -> Java.Lang.Invoke.MethodHandle
Параметры
- refc
- Class
класс, из которого осуществляется доступ к методу
- name
- String
имя метода
- type
- MethodType
Тип метода
Возвращаемое значение
требуемый дескриптор метода
- Атрибуты
Комментарии
Создает дескриптор метода для статического метода. Тип дескриптора метода будет типом метода. (Так как статические методы не принимают приемники, дополнительный аргумент приемника не вставляется в тип дескриптора метода, так как в нем будет или #findVirtual findVirtual
#findSpecial findSpecial
.) Метод и все его типы аргументов должны быть доступны для объекта подстановки.
Возвращенный дескриптор метода будет иметь переменную methodHandle#asVarargsCollector, если задана переменная arifier0x0080
() метода.
Если возвращенный дескриптор метода вызывается, класс метода будет инициализирован, если он еще не инициализирован.
<b>Example:</b><blockquote>
{@code
import static java.lang.invoke.MethodHandles.*;
import static java.lang.invoke.MethodType.*;
...
MethodHandle MH_asList = publicLookup().findStatic(Arrays.class,
"asList", methodType(List.class, Object[].class));
assertEquals("[x, y]", MH_asList.invoke("x", "y").toString());
}
</blockquote>
Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.