模块 java.base

枚举类枚举类 DirectMethodHandleDesc.Kind

java.lang.Object
java.lang.Enum <DirectMethodHandleDesc.Kind >
java.lang.constant.DirectMethodHandleDesc.Kind
所有已实现的接口:
Serializable , Comparable<DirectMethodHandleDesc.Kind> , Constable
封闭接口:
DirectMethodHandleDesc

public static enum DirectMethodHandleDesc.Kind extends Enum <DirectMethodHandleDesc.Kind >
可以用 DirectMethodHandleDesc 描述的方法句柄的种类。
自从:
12
  • 枚举常量详细信息

  • 字段详细信息

    • refKind

      public final int refKind
      这种方法句柄对应的refKind值,由MethodHandleInfo 定义
    • isInterface

      public final boolean isInterface
      这是一个接口吗
  • 方法详情

    • values

      public static DirectMethodHandleDesc.Kind [] values()
      返回一个数组,其中包含此枚举类的常量,按照它们声明的顺序排列。
      返回:
      包含此枚举类常量的数组,按照它们声明的顺序排列
    • valueOf

      public static DirectMethodHandleDesc.Kind  valueOf(String  name)
      返回具有指定名称的此类的枚举常量。字符串必须匹配确切地用于在此类中声明枚举常量的标识符。 (不允许使用无关的空白字符。)
      参数:
      name - 要返回的枚举常量的名称。
      返回:
      具有指定名称的枚举常量
      抛出:
      IllegalArgumentException - 如果此枚举类没有具有指定名称的常量
      NullPointerException - 如果参数为空
    • valueOf

      public static DirectMethodHandleDesc.Kind  valueOf(int refKind)
      返回具有给定 refKind 字段的枚举成员。表现得像 valueOf(refKind, false) 。作为一种特殊情况,如果 refKindREF_invokeInterface (9) 那么 isInterface 字段将为真。
      参数:
      refKind - 所需成员的 refKind
      返回:
      匹配的枚举成员
      抛出:
      IllegalArgumentException - 如果没有这样的成员
    • valueOf

      public static DirectMethodHandleDesc.Kind  valueOf(int refKind, boolean isInterface)
      返回具有给定 refKindisInterface 参数的枚举成员。对于 refKind 的大多数值,无论 isInterface 的值如何,都存在完全匹配。这些都是:
      • REF_invokeVirtual 匹配到 VIRTUAL
      • REF_invokeInterface 匹配到 INTERFACE_VIRTUAL
      • REF_newInvokeSpecial 匹配到 CONSTRUCTOR
      • REF_getField 匹配到 GETTER
      • REF_putField 匹配到 SETTER
      • REF_getStaticSTATIC_GETTER 匹配
      • REF_putStatic 匹配到 STATIC_SETTER
      至于其余部分,返回的种类将取决于 isInterface 的值(相应地为 false 或 true):
      • REF_invokeStaticSTATICINTERFACE_STATIC 匹配
      • REF_invokeSpecialSPECIALINTERFACE_SPECIAL 匹配
      参数:
      refKind - 所需成员的 refKind
      isInterface - 所需成员是否用于接口方法
      返回:
      匹配的枚举成员
      抛出:
      IllegalArgumentException - 如果没有这样的成员