Module jdk.dynalink
Package jdk.dynalink

Enum Class StandardOperation

java.lang.Object
java.lang.Enum<StandardOperation>
jdk.dynalink.StandardOperation
所有已实现的接口:
Serializable, Comparable<StandardOperation>, Constable, Operation

public enum StandardOperation extends Enum<StandardOperation> implements Operation
定义了标准的动态操作。操作 GETSET 必须作为 NamespaceOperation 的一部分使用。然后可以进一步在这些 NamespaceOperation 上使用 NamedOperation 来绑定 GETSET 操作的名称参数,这样它们就会从类型签名中消失。 NamedOperation 也可以用于为 CALLNEW 操作添加诊断名称,因此它不会影响它们的类型签名。
  • Enum Constant Details

    • GET

      public static final StandardOperation GET
      从对象上定义的命名空间获取值。使用此操作的调用站点应具有签名 (receiver, name)→value(receiver)→value,当与 NamedOperation 一起使用时,所有参数和返回类型都可以是任何类型(原始类型或引用类型)。此操作必须始终作为 NamespaceOperation 的一部分使用。
    • SET

      public static final StandardOperation SET
      在对象上定义的命名空间中设置值。使用此操作的调用站点应具有签名 (receiver, name, value)→void(receiver, value)→void,当与 NamedOperation 一起使用时,所有参数和返回类型都可以是任何类型(原始类型或引用类型)。此操作必须始终作为 NamespaceOperation 的一部分使用。
    • REMOVE

      public static final StandardOperation REMOVE
      从对象上定义的命名空间中移除值。使用此操作的调用站点应具有签名 (receiver, name)→void(receiver)→void,当与 NamedOperation 一起使用时,所有参数都可以是任何类型(原始类型或引用类型)。此操作必须始终作为 NamespaceOperation 的一部分使用。
    • CALL

      public static final StandardOperation CALL
      调用可调用对象。使用此操作的调用站点应具有签名 (callable, receiver, arguments...)→value,所有参数和返回类型都可以是任何类型(原始类型或引用类型)。通常,可调用对象被假定为对象的方法,因此在传递参数之前,始终向可调用对象传递显式的接收者值。如果可调用对象没有接收者的概念,则可以忽略接收者参数的值。即使 CALL 操作不带名称,也允许与 NamedOperation 一起使用。使用具有命名操作的操作不会影响其签名;名称仅用作错误消息的诊断描述。
    • NEW

      public static final StandardOperation NEW
      调用构造函数对象。使用此操作的调用站点应具有签名 (constructor, arguments...)→value,所有参数和返回类型都可以是任何类型(原始类型或引用类型)。即使 NEW 操作不带名称,也允许与 NamedOperation 一起使用。使用具有命名操作的操作不会影响其签名;名称仅用作错误消息的诊断描述。
  • Method Details

    • values

      public static StandardOperation[] values()
      返回包含此枚举类的常量的数组,按它们声明的顺序排列。
      返回:
      包含此枚举类的常量的数组,按它们声明的顺序排列
    • valueOf

      public static StandardOperation valueOf(String name)
      返回具有指定名称的此类的枚举常量。字符串必须与在此类中声明枚举常量时使用的标识符完全匹配。(不允许存在多余的空格字符。)
      参数:
      name - 要返回的枚举常量的名称。
      返回:
      具有指定名称的枚举常量
      抛出:
      IllegalArgumentException - 如果此枚举类没有具有指定名称的常量
      NullPointerException - 如果参数为null