Language

MethodHandles.Lookup.UnreflectSpecial(Method, Class) メソッド

定義

反映されたメソッドのメソッド ハンドルを生成します。

[Android.Runtime.Register("unreflectSpecial", "(Ljava/lang/reflect/Method;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;", "", ApiSince=26)]
public Java.Lang.Invoke.MethodHandle UnreflectSpecial(Java.Lang.Reflect.Method m, Java.Lang.Class specialCaller);
[<Android.Runtime.Register("unreflectSpecial", "(Ljava/lang/reflect/Method;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;", "", ApiSince=26)>]
member this.UnreflectSpecial : Java.Lang.Reflect.Method * Java.Lang.Class -> Java.Lang.Invoke.MethodHandle

パラメーター

m
Method

反映されたメソッド

specialCaller
Class

メソッドを呼び出すクラス

返品

反映されたメソッドを呼び出すことができるメソッド ハンドル

属性

注釈

反映されたメソッドのメソッド ハンドルを生成します。 明示的に指定されたspecialCaller内からinvokespecial命令から呼び出された場合と同様に、受信側でメソッドをオーバーライドするためのチェックがバイパスされます。 メソッド ハンドルの型は、適切に制限された受信側の型の前に付加されたメソッドの型になります。 (受信側の種類は specialCaller またはサブタイプになります)。メソッドの accessible フラグが設定されていない場合、 invokespecial 命令がリンクされているかのように、参照クラスの代わりにアクセス チェックが直ちに実行されます。

メソッド解決の前に、明示的に指定された呼び出し元クラスが参照クラスと同じでない場合、またはこの参照オブジェクトにプライベート アクセス権限がない場合、アクセスは失敗します。

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

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象