クラスjava.lang.invoke.MethodHandles.Lookup
の使用
| パッケージ | 説明 |
|---|---|
| java.lang |
Javaプログラミング言語の設計にあたり基本的なクラスを提供します。
|
| java.lang.constant |
クラスやメソッド・ハンドルなどのランタイム・エンティティ用に「名目記述子」を表すクラスおよびインタフェース、および定数プール・エントリや
invokedynamicコール・サイトなどのクラス・ファイル・エンティティ用に「名目記述子」を表すクラスおよびインタフェース。 |
| java.lang.invoke |
java.lang.invokeパッケージは、Java Virtual Machineとやりとりするための低レベルのプリミティブを提供します。 |
| java.lang.runtime |
java.lang.runtimeパッケージでは、Java言語の低レベルのランタイム・サポートが提供されます。 |
| jdk.dynalink |
invokedynamicコール・サイトをリンクするためのインタフェースとクラスが含まれています。 |
| jdk.dynalink.linker |
独自の言語固有のオブジェクト・モデルと型変換を実装するために、言語ランタイムに必要なインタフェースとクラスが含まれています。
|
| jdk.dynalink.linker.support |
言語ランタイムが、言語固有のオブジェクト・モデルを実装し、いくつかのクラスの基本的な実装とさまざまなユーティリティを提供することによってコンバージョンをより便利にするクラスが含まれています。
|
-
java.langでのMethodHandles.Lookupの使用
型MethodHandles.Lookupのパラメータを持つjava.langのメソッド 修飾子と型 メソッド 説明 DoubleDouble. resolveConstantDesc(MethodHandles.Lookup lookup)このインスタンスをConstantDescとして解決します。その結果がインスタンス自体です。FloatFloat. resolveConstantDesc(MethodHandles.Lookup lookup)このインスタンスをConstantDescとして解決します。その結果がインスタンス自体です。IntegerInteger. resolveConstantDesc(MethodHandles.Lookup lookup)このインスタンスをConstantDescとして解決します。その結果がインスタンス自体です。LongLong. resolveConstantDesc(MethodHandles.Lookup lookup)このインスタンスをConstantDescとして解決します。その結果がインスタンス自体です。StringString. resolveConstantDesc(MethodHandles.Lookup lookup)このインスタンスをConstantDescとして解決します。その結果がインスタンス自体です。 -
java.lang.constantでのMethodHandles.Lookupの使用
型MethodHandles.Lookupのパラメータを持つjava.lang.constantのメソッド 修飾子と型 メソッド 説明 CallSiteDynamicCallSiteDesc. resolveCallSiteDesc(MethodHandles.Lookup lookup)指定された引数を使用してブートストラップ・メソッドを最終的に起動し、結果のCallSiteを返します。ObjectConstantDesc. resolveConstantDesc(MethodHandles.Lookup lookup)JVMS 5.4.3の解決動作およびJVMS 5.4.4のアクセス制御動作を反映して、この記述子を解決します。 -
java.lang.invokeでのMethodHandles.Lookupの使用
MethodHandles.Lookupを返すjava.lang.invokeのメソッド 修飾子と型 メソッド 説明 MethodHandles.LookupMethodHandles.Lookup. defineHiddenClass(byte[] bytes, boolean initialize, MethodHandles.Lookup.ClassOption... options)bytesからhiddenクラスまたはインタフェースを作成し、新しく作成されたクラスまたはインタフェースにLookupを返します。MethodHandles.LookupMethodHandles.Lookup. dropLookupMode(int modeToDrop)このルックアップ・オブジェクトがメンバーを検出するが、ルックアップ・モードでルックアップを作成して、ルックアップ・モードを失ったルックアップを作成します。MethodHandles.LookupMethodHandles.Lookup. in(Class<?> requestedLookupClass)指定された新しいルックアップ・クラスでルックアップを作成します。static MethodHandles.LookupMethodHandles. lookup()呼出し元のすべてのサポートされるバイトコード動作をエミュレートするためのフル機能を持つルックアップ・オブジェクトを返します。static MethodHandles.LookupMethodHandles. privateLookupIn(Class<?> targetClass, MethodHandles.Lookup caller)「プライベート・アクセス」を含む、サポートされているすべてのバイトコード動作をエミュレートするために、ターゲット・クラスのlookupオブジェクトを返します。static MethodHandles.LookupMethodHandles. publicLookup()最小の信頼レベルを持つルックアップ・オブジェクトを返します。型MethodHandles.Lookupのパラメータを持つjava.lang.invokeのメソッド 修飾子と型 メソッド 説明 static CallSiteLambdaMetafactory. altMetafactory(MethodHandles.Lookup caller, String invokedName, MethodType invokedType, Object... args)適切な型適応および引数の部分評価の後、指定されたMethodHandleへの委譲により、1つ以上のインタフェースを実装する単純な関数オブジェクトの作成を容易にします。static VarHandleConstantBootstraps. arrayVarHandle(MethodHandles.Lookup lookup, String name, Class<VarHandle> type, Class<?> arrayClass)配列型にVarHandleを検索します。static <E extends Enum<E>>
EConstantBootstraps. enumConstant(MethodHandles.Lookup lookup, String name, Class<E> type)nameによって指定された名前を持つtypeによって指定された型のenum定数を返します。static ObjectConstantBootstraps. explicitCast(MethodHandles.Lookup lookup, String name, Class<?> dstType, Object value)ソース・タイプから宛先タイプへの変換を適用します。static VarHandleConstantBootstraps. fieldVarHandle(MethodHandles.Lookup lookup, String name, Class<VarHandle> type, Class<?> declaringClass, Class<?> fieldType)インスタンス・フィールドのVarHandleを検索します。static ObjectConstantBootstraps. getStaticFinal(MethodHandles.Lookup lookup, String name, Class<?> type)クラスで宣言された静的な最終フィールドの値を返します。この値は、(または、プリミティブ値フィールドの場合はラッパー・クラスで宣言されます。)フィールド・タイプと同じですstatic ObjectConstantBootstraps. getStaticFinal(MethodHandles.Lookup lookup, String name, Class<?> type, Class<?> declaringClass)静的最終フィールドの値を返します。static ObjectConstantBootstraps. invoke(MethodHandles.Lookup lookup, String name, Class<?> type, MethodHandle handle, Object... args)指定された引数を使ってメソッド・ハンドルを呼び出した結果を返します。static CallSiteStringConcatFactory. makeConcat(MethodHandles.Lookup lookup, String name, MethodType concatType)おそらく型適応と引数の部分的な評価の後に既知の型の既知の引数を効率的に連結するために使用できる最適化された文字列連結メソッドの作成を容易にします。static CallSiteStringConcatFactory. makeConcatWithConstants(MethodHandles.Lookup lookup, String name, MethodType concatType, String recipe, Object... constants)おそらく型適応と引数の部分的な評価の後に既知の型の既知の引数を効率的に連結するために使用できる最適化された文字列連結メソッドの作成を容易にします。static CallSiteLambdaMetafactory. metafactory(MethodHandles.Lookup caller, String invokedName, MethodType invokedType, MethodType samMethodType, MethodHandle implMethod, MethodType instantiatedMethodType)適切な型適応および引数の部分評価の後、指定されたMethodHandleへの委譲により、1つ以上のインタフェースを実装する単純な関数オブジェクトの作成を容易にします。static ObjectConstantBootstraps. nullConstant(MethodHandles.Lookup lookup, String name, Class<?> type)typeで指定された参照型のnullオブジェクト参照を戻します。static Class<?>ConstantBootstraps. primitiveClass(MethodHandles.Lookup lookup, String name, Class<?> type)nameによって型記述子が指定されているプリミティブ型のClassミラーを戻します。static MethodHandles.LookupMethodHandles. privateLookupIn(Class<?> targetClass, MethodHandles.Lookup caller)「プライベート・アクセス」を含む、サポートされているすべてのバイトコード動作をエミュレートするために、ターゲット・クラスのlookupオブジェクトを返します。<T extends Member>
TMethodHandleInfo. reflectAs(Class<T> expected, MethodHandles.Lookup lookup)メソッド、コンストラクタまたはフィールド・オブジクトの基礎となるメンバーをリフレクトします。VarHandleVarHandle.VarHandleDesc. resolveConstantDesc(MethodHandles.Lookup lookup)static VarHandleConstantBootstraps. staticFieldVarHandle(MethodHandles.Lookup lookup, String name, Class<VarHandle> type, Class<?> declaringClass, Class<?> fieldType)静的フィールドのVarHandleを検索します。 -
java.lang.runtimeでのMethodHandles.Lookupの使用
型MethodHandles.Lookupのパラメータを持つjava.lang.runtimeのメソッド 修飾子と型 メソッド 説明 static ObjectObjectMethods. bootstrap(MethodHandles.Lookup lookup, String methodName, TypeDescriptor type, Class<?> recordClass, String names, MethodHandle... getters)invokedynamicコール・サイトまたは動的な定数プール・エントリのコンポーネント名およびアクセッサ・メソッドの説明に基づいて、Object.equals(Object)、Object.hashCode()およびObject.toString()メソッドを生成するブートストラップ・メソッド。 -
jdk.dynalinkでのMethodHandles.Lookupの使用
MethodHandles.Lookupを返すjdk.dynalinkのメソッド 修飾子と型 メソッド 説明 MethodHandles.LookupSecureLookupSupplier. getLookup()このSecureLookupSupplierで保護されている参照を返します。protected MethodHandles.LookupSecureLookupSupplier. getLookupPrivileged()セキュリティ・チェックなしでSecureLookupSupplier.getLookup()の値を返します。型MethodHandles.Lookupのパラメータを持つjdk.dynalinkのコンストラクタ コンストラクタ 説明 CallSiteDescriptor(MethodHandles.Lookup lookup, Operation operation, MethodType methodType)新しいコール・サイト記述子を作成します。SecureLookupSupplier(MethodHandles.Lookup lookup)渡されたルックアップを確保して、新しいセキュア・ルック・アップ・サプライヤを作成します。 -
jdk.dynalink.linkerでのMethodHandles.Lookupの使用
型MethodHandles.Lookupの型引数を持つjdk.dynalink.linkerのメソッド・パラメータ 修飾子と型 メソッド 説明 GuardedInvocationGuardingTypeConverterFactory. convertToType(Class<?> sourceType, Class<?> targetType, Supplier<MethodHandles.Lookup> lookupSupplier)指定されたソース型の値を受け取り、指定されたターゲット型に変換された値を返す保護された型変換を返します。 -
jdk.dynalink.linker.supportでのMethodHandles.Lookupの使用
型MethodHandles.Lookupのパラメータを持つjdk.dynalink.linker.supportのメソッド 修飾子と型 メソッド 説明 static MethodHandleLookup. findOwnSpecial(MethodHandles.Lookup lookup, String name, Class<?> rtype, Class<?>... ptypes)ルックアップがあれば、そのルックアップ・クラスのメソッドをLookup.findSpecial(Class, String, MethodType)で見つけます。static MethodHandleLookup. findOwnStatic(MethodHandles.Lookup lookup, String name, Class<?> rtype, Class<?>... ptypes)ルックアップがあれば、そのルックアップ・クラスのメソッドをLookup.findStatic(Class, String, MethodType)で見つけます。static MethodHandleLookup. unreflect(MethodHandles.Lookup lookup, Method m)unreflect(Method)を実行し、発生したIllegalAccessExceptionをIllegalAccessErrorに変換します。static MethodHandleLookup. unreflectConstructor(MethodHandles.Lookup lookup, Constructor<?> c)型MethodHandles.Lookupのパラメータを持つjdk.dynalink.linker.supportのコンストラクタ コンストラクタ 説明 Lookup(MethodHandles.Lookup lookup)MethodHandles.Lookupのインスタンスにバインドされた新しいインスタンスを作成します。