クラスDynamicCallSiteDesc

java.lang.Object
java.lang.constant.DynamicCallSiteDesc

public finalクラスDynamicCallSiteDescオブジェクトを拡張します。
invokedynamic呼び出しサイトの「名目記述子」

DynamicCallSiteDescは不変であり、その動作はオブジェクトIDに依存しません。

導入されたバージョン:
12
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    invokedynamicのブートストラップ引数を記述するConstantDesc sを返します。
    invokedynamicのブートストラップ・メソッドを記述するMethodHandleDescを返します。
    final boolean
    等価性のために、指定されたオブジェクトをこの記述子と比較します。
    final int
    このオブジェクトに対するハッシュ・コード値を返します。
    invokedynamicNameAndTypeオペランドに表示される呼び出し名を返します。
    invokedynamicNameAndTypeオペランドに表示される呼び出しタイプを示すMethodTypeDescを返します。
    of(DirectMethodHandleDesc bootstrapMethod, MethodTypeDesc invocationType)
    ブートストラップ・メソッドに静的引数がなく、nameパラメータがConstantDescs.DEFAULT_NAMEinvokedynamicコール・サイトに名目記述子を作成します。
    of(DirectMethodHandleDesc bootstrapMethod, String invocationName, MethodTypeDesc invocationType)
    ブートストラップ・メソッドに静的な引数がないinvokedynamicコール・サイトの名目記述子を作成します。
    of(DirectMethodHandleDesc bootstrapMethod, String invocationName, MethodTypeDesc invocationType, ConstantDesc... bootstrapArgs)
    invokedynamic callサイトの名目記述子を作成します。
    指定された引数を使用してブートストラップ・メソッドを最終的に起動し、結果のCallSiteを返します。
    ブートストラップ・メソッド、呼出し名と型、静的ブートストラップ引数など、この呼出しサイト記述のコンパクトなテキスト形式の説明を返します。
    withArgs(ConstantDesc... bootstrapArgs)
    ブートストラップ・メソッド、名前および呼出しタイプがこれと同じで、指定されたブートストラップ引数を持つinvokedynamicコール・サイトの名目記述子を返します。
    withNameAndType(String invocationName, MethodTypeDesc invocationType)
    ブートストラップおよびブートストラップ引数がこれと同じですが、指定されたinvocationNameと呼出しinvocationTypeを使用して、invokedynamicコール・サイトの名目記述子を返します

    クラスオブジェクトで宣言されたメソッド

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected Object
    このオブジェクトのコピーを作成して、返します。
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • メソッドの詳細

    • of

      public static DynamicCallSiteDesc of(DirectMethodHandleDesc bootstrapMethod, String invocationName, MethodTypeDesc invocationType, ConstantDesc... bootstrapArgs)
      invokedynamic callサイトの名目記述子を作成します。
      パラメータ:
      bootstrapMethod - invokedynamicのブートストラップ・メソッドを記述するDirectMethodHandleDesc
      invocationName - invokedynamicNameAndTypeオペランドに表示される非修飾名
      invocationType - invokedynamicNameAndTypeオペランドに表示される呼び出しタイプを示すMethodTypeDesc
      bootstrapArgs - ConstantDescは、BootstrapMethods属性に出現するブートストラップに対する静的引数を記述
      戻り値:
      名目記述子
      スロー:
      NullPointerException - パラメータまたはその内容がnullの場合
      IllegalArgumentException - 起動名の書式が正しくありません
      Java Virtual Machine仕様を参照してください:
      4.2.2 未修飾名
    • of

      public static DynamicCallSiteDesc of(DirectMethodHandleDesc bootstrapMethod, String invocationName, MethodTypeDesc invocationType)
      ブートストラップ・メソッドに静的な引数がないinvokedynamicコール・サイトの名目記述子を作成します。
      パラメータ:
      bootstrapMethod - invokedynamicのブートストラップ・メソッド
      invocationName - invokedynamicNameAndTypeオペランドに表示されるinvocationName
      invocationType - invokedynamicNameAndTypeオペランドに表示される呼び出しinvocationType
      戻り値:
      名目記述子
      スロー:
      NullPointerException - パラメータがnullの場合
      IllegalArgumentException - 起動名の書式が正しくありません
    • of

      public static DynamicCallSiteDesc of(DirectMethodHandleDesc bootstrapMethod, MethodTypeDesc invocationType)
      ブートストラップ・メソッドに静的引数がなく、nameパラメータがConstantDescs.DEFAULT_NAMEinvokedynamicコール・サイトに名目記述子を作成します。
      パラメータ:
      bootstrapMethod - invokedynamicのブートストラップ・メソッドを記述するDirectMethodHandleDesc
      invocationType - invokedynamicNameAndTypeオペランドに表示される呼び出しタイプを示すMethodTypeDesc
      戻り値:
      名目記述子
      スロー:
      NullPointerException - パラメータがnullの場合
    • withArgs

      public DynamicCallSiteDesc withArgs(ConstantDesc... bootstrapArgs)
      ブートストラップ・メソッド、名前および呼出しタイプがこれと同じで、指定されたブートストラップ引数を持つinvokedynamicコール・サイトの名目記述子を返します。
      パラメータ:
      bootstrapArgs - ConstantDescは、BootstrapMethods属性に出現するブートストラップに対する静的引数を記述
      戻り値:
      名目記述子
      スロー:
      NullPointerException - 引数またはその内容がnullの場合
    • withNameAndType

      public DynamicCallSiteDesc withNameAndType(String invocationName, MethodTypeDesc invocationType)
      ブートストラップおよびブートストラップ引数がこれと同じですが、指定されたinvocationNameと呼出しinvocationTypeを使用して、invokedynamicコール・サイトの名目記述子を返します
      パラメータ:
      invocationName - invokedynamicNameAndTypeオペランドに表示される非修飾名
      invocationType - invokedynamicNameAndTypeオペランドに表示される呼び出しタイプを示すMethodTypeDesc
      戻り値:
      名目記述子
      スロー:
      NullPointerException - パラメータがnullの場合
      IllegalArgumentException - 起動名の書式が正しくありません
      Java Virtual Machine仕様を参照してください:
      4.2.2 未修飾名
    • invocationName

      public String invocationName()
      invokedynamicNameAndTypeオペランドに表示される呼び出し名を返します。
      戻り値:
      呼出し名
    • invocationType

      public MethodTypeDesc invocationType()
      invokedynamicNameAndTypeオペランドに表示される呼び出しタイプを示すMethodTypeDescを返します。
      戻り値:
      起動タイプ
    • bootstrapMethod

      public MethodHandleDesc bootstrapMethod()
      invokedynamicのブートストラップ・メソッドを記述するMethodHandleDescを返します。
      戻り値:
      invokedynamicのブートストラップ・メソッド
    • bootstrapArgs

      public ConstantDesc[] bootstrapArgs()
      invokedynamicのブートストラップ引数を記述するConstantDesc sを返します。 返された配列は常にnull以外です。 このDynamicCallSiteDescにブートストラップ引数がない場合、長さ0の配列が返されます。
      戻り値:
      invokedynamicのブートストラップ引数
    • resolveCallSiteDesc

      public CallSite resolveCallSiteDesc(MethodHandles.Lookup lookup) throws Throwable
      指定された引数を使用してブートストラップ・メソッドを最終的に起動し、結果のCallSiteを返します。
      パラメータ:
      lookup - クラス名を解決するために使用されるMethodHandles.Lookup
      戻り値:
      CallSite
      スロー:
      Throwable - ブートストラップ・メソッドによって例外がスローされる場合
    • equals

      public final boolean equals(Object o)
      等価性のために、指定されたオブジェクトをこの記述子と比較します。 trueを返しますが、指定したオブジェクトがDynamicCallSiteDescでもある場合、および両方の記述子に=ブートストラップ・メソッド、ブートストラップ引数リスト、呼出し名および呼出しタイプが等しい場合に限ります。
      オーバーライド:
      equals、クラスObject
      パラメータ:
      o - このDynamicCallSiteDescと比較するDynamicCallSiteDesc
      戻り値:
      指定されたDynamicCallSiteDescがこのDynamicCallSiteDescと等しい場合はtrue
      関連項目:
    • hashCode

      public final int hashCode()
      次のクラスからコピーされた説明: Object
      このオブジェクトに対するハッシュ・コード値を返します。 このメソッドは、HashMapによって提供されるハッシュ表などの、ハッシュ表の利点のためにサポートされています。

      hashCodeの一般的な規則は次のとおりです。

      • Javaアプリケーションの実行中に同じオブジェクトに対して複数回呼び出された場合は常に、このオブジェクトに対するequalsの比較で使用される情報が変更されていなければ、hashCodeメソッドは常に同じ整数を返す必要があります。 ただし、この整数は同じアプリケーションの実行ごとに同じである必要はありません。
      • 2つのオブジェクトがequalsメソッドに従って等しい場合、2つのオブジェクトのそれぞれで hashCodeメソッドを呼び出すと、同じ整数結果が生成される必要があります。
      • 2つのオブジェクトがequalsメソッドに従って等しくない場合、2つのオブジェクトのそれぞれでhashCodeメソッドを呼び出すと、個別の整数結果が生成される必要はありません。 ただし、プログラマは、等しくないオブジェクトに対して異なる整数の結果を生成すると、ハッシュ表のパフォーマンスが向上する可能性があることに注意するようにしてください。

      オーバーライド:
      hashCode、クラスObject
      戻り値:
      このオブジェクトのハッシュ・コード値
      関連項目:
    • toString

      public String toString()
      ブートストラップ・メソッド、呼出し名と型、静的ブートストラップ引数など、この呼出しサイト記述のコンパクトなテキスト形式の説明を返します。
      オーバーライド:
      toString、クラスObject
      戻り値:
      この呼出しサイト記述子のコンパクトな説明