次の方法で共有


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

メソッドの型

戻り値

目的のメソッド ハンドル

属性

注釈

静的メソッドのメソッド ハンドルを生成します。 メソッド ハンドルの型は、メソッドの型になります。 (静的メソッドはレシーバーを受け取らないので、メソッド ハンドル型に追加の受信側引数は挿入されません。これは、次のように使用される場合と#findSpecial findSpecial同様#findVirtual findVirtualです)。メソッドとそのすべての引数型には、参照オブジェクトからアクセスできる必要があります。

メソッドの変数アリティ修飾子ビット (0x0080) が設定されている場合にのみ、返されるメソッド ハンドルには MethodHandle#asVarargsCollector 変数アリティがあります。

返されたメソッド ハンドルが呼び出されると、まだ初期化されていない場合は、メソッドのクラスが初期化されます。

<b>例:</b><ブロッククォート>

{@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>

の Java ドキュメントjava.lang.invoke.MethodHandles.Lookup.findStatic(java.lang.Class<?>, java.lang.String, java.lang.invoke.MethodType)

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

適用対象