- 所有已实现的接口:
-
Serializable
,Comparable<StandardOperation>
,Constable
,Operation
定义了标准的动态操作。操作
GET
和 SET
必须作为 NamespaceOperation
的一部分使用。然后可以进一步在这些 NamespaceOperation
上使用 NamedOperation
来绑定 GET
和 SET
操作的名称参数,这样它们就会从类型签名中消失。 NamedOperation
也可以用于为 CALL
和 NEW
操作添加诊断名称,因此它不会影响它们的类型签名。
-
Nested Class Summary
Nested classes/interfaces declared in class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>>
-
Enum Constant Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic StandardOperation
返回具有指定名称的此类的枚举常量。static StandardOperation[]
values()
返回包含此枚举类的常量的数组,按它们声明的顺序排列。Methods declared in class java.lang.Enum
clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
Methods declared in interface jdk.dynalink.Operation
named, withNamespace, withNamespaces
-
Enum Constant Details
-
GET
从对象上定义的命名空间获取值。使用此操作的调用站点应具有签名(receiver, name)→value
或(receiver)→value
,当与NamedOperation
一起使用时,所有参数和返回类型都可以是任何类型(原始类型或引用类型)。此操作必须始终作为NamespaceOperation
的一部分使用。 -
SET
在对象上定义的命名空间中设置值。使用此操作的调用站点应具有签名(receiver, name, value)→void
或(receiver, value)→void
,当与NamedOperation
一起使用时,所有参数和返回类型都可以是任何类型(原始类型或引用类型)。此操作必须始终作为NamespaceOperation
的一部分使用。 -
REMOVE
从对象上定义的命名空间中移除值。使用此操作的调用站点应具有签名(receiver, name)→void
或(receiver)→void
,当与NamedOperation
一起使用时,所有参数都可以是任何类型(原始类型或引用类型)。此操作必须始终作为NamespaceOperation
的一部分使用。 -
CALL
调用可调用对象。使用此操作的调用站点应具有签名(callable, receiver, arguments...)→value
,所有参数和返回类型都可以是任何类型(原始类型或引用类型)。通常,可调用对象被假定为对象的方法,因此在传递参数之前,始终向可调用对象传递显式的接收者值。如果可调用对象没有接收者的概念,则可以忽略接收者参数的值。即使CALL
操作不带名称,也允许与NamedOperation
一起使用。使用具有命名操作的操作不会影响其签名;名称仅用作错误消息的诊断描述。 -
NEW
调用构造函数对象。使用此操作的调用站点应具有签名(constructor, arguments...)→value
,所有参数和返回类型都可以是任何类型(原始类型或引用类型)。即使NEW
操作不带名称,也允许与NamedOperation
一起使用。使用具有命名操作的操作不会影响其签名;名称仅用作错误消息的诊断描述。
-
-
Method Details
-
values
返回包含此枚举类的常量的数组,按它们声明的顺序排列。- 返回:
- 包含此枚举类的常量的数组,按它们声明的顺序排列
-
valueOf
返回具有指定名称的此类的枚举常量。字符串必须与在此类中声明枚举常量时使用的标识符完全匹配。(不允许存在多余的空格字符。)- 参数:
-
name
- 要返回的枚举常量的名称。 - 返回:
- 具有指定名称的枚举常量
- 抛出:
-
IllegalArgumentException
- 如果此枚举类没有具有指定名称的常量 -
NullPointerException
- 如果参数为null
-