- java.lang.Object
 -  
      
- jdk.dynalink.NamedOperation
 
 
-  
       
- All Implemented Interfaces:
 -  
         
Operation 
public final class NamedOperation extends Object implements Operation
将名称与另一个操作相关联的操作。 通常与通常使用名称或索引将其绑定到固定名称的操作一起使用。 例如new NamedOperation( new NamespaceOperation( StandardOperation.GET, StandardNamespace.PROPERTY), "color")将被命名的操作,用于在应用对象上获取名为“color”的属性new NamedOperation( new NamespaceOperation( StandardOperation.GET, StandardNamespace.ELEMENT), 3)将作为一个命名操作,将索引3中的元素从应用的集合中获取(“名称”在这种情况下类似于“地址”,并包含文本名称,数字索引或任何其他类型的寻址,链接器可以理解)。 在这些情况下,操作的呼叫站点的预期签名将更改为不再包含name参数。 具体来说,所有StandardOperation成员的文档描述了如何将它们并入到命名操作中。而
NamedOperation可以直接构建,通常使用Operation.named(Object)工厂方法更方便,例如:StandardOperation.GET .withNamespace(StandardNamespace.ELEMENT), .named(3) )尽管
NamedOperation最常用于NamespaceOperation作为其基础,但它也可以以其他操作为基础(除了另一个命名操作)。 具体来说,StandardOperation.CALL以及StandardOperation.NEW都可以直接与NamedOperation一起使用。 这些操作的合同使得当它们被用作命名操作时,它们的名称仅用于诊断消息,通常包含检索被调用方的源表达式的文本表示,例如StandardOperation.CALL.named("window.open")。 
-  
        
       
-  
             
构造方法摘要
构造方法 Constructor 描述 NamedOperation(Operation baseOperation, Object name)创建一个新的命名操作。 
-  
             
方法摘要
所有方法 静态方法 接口方法 具体的方法 Modifier and Type 方法 描述 NamedOperationchangeName(String newName)查找或创建与名称不同的命名操作。booleanequals(Object obj)将此命名操作与另一个对象进行比较。OperationgetBaseOperation()返回此命名操作的基本操作。static OperationgetBaseOperation(Operation op)如果传递的操作是命名操作,则返回其getBaseOperation(),否则返回操作。ObjectgetName()返回此命名操作的名称。static ObjectgetName(Operation op)如果传递的操作是命名操作,则返回其getName(),否则返回null。inthashCode()返回此命名操作的哈希码。StringtoString()返回此命名操作的字符串表示形式。-  
               
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait 
-  
               
Methods inherited from interface jdk.dynalink.Operation
named, withNamespace, withNamespaces 
 -  
               
 
 -  
             
 
-  
        
       
-  
             
构造方法详细信息
-  
NamedOperation
public NamedOperation(Operation baseOperation, Object name)
创建一个新的命名操作。- 参数
 -  
              
baseOperation- 与名称相关联的基本操作。 -  
              
name- 与基本操作相关联的名称。 请注意,名称不一定是字符串,但可以是任意对象。 当名称用于寻址时,它可以是一个Integer,意在用作数组或列表等的索引。 - 异常
 -  
              
NullPointerException- 如果baseOperation或name为空。 -  
              
IllegalArgumentException- 如果baseOperation本身是一个NamedOperation。 
 
 -  
 
-  
             
方法详细信息
-  
getBaseOperation
public Operation getBaseOperation()
返回此命名操作的基本操作。- 结果
 - 这个命名操作的基本操作。
 
 
-  
getName
public Object getName()
返回此命名操作的名称。- 结果
 - 这个命名操作的名称。
 
 
-  
changeName
public final NamedOperation changeName(String newName)
查找或创建与名称不同的命名操作。- 参数
 -  
              
newName- 用新名称替换旧名称。 - 结果
 - 名称更改名称的操作。
 - 异常
 -  
              
NullPointerException- 如果名称为空。 
 
-  
equals
public boolean equals(Object obj)
将此命名操作与另一个对象进行比较。 如果另一个对象也是一个命名操作,并且它们的基本操作和名称都相等,则返回true。- 重写:
 -  
              
equals在类Object - 参数
 -  
              
obj- 与之比较的参考对象。 - 结果
 -  
              如果此对象与obj参数相同, 
true; 否则为false。 - 另请参见:
 -  
              
Object.hashCode(),HashMap 
 
-  
hashCode
public int hashCode()
返回此命名操作的哈希码。 它被定义为等于baseOperation.hashCode() + 31 * name.hashCode()。- 重写:
 -  
              
hashCode在Object - 结果
 - 该对象的哈希码值。
 - 另请参见:
 -  
              
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object) 
 
-  
toString
public String toString()
返回此命名操作的字符串表示形式。 它被定义为等于baseOperation.toString() + ":" + name.toString()。 
-  
getBaseOperation
public static Operation getBaseOperation(Operation op)
如果传递的操作是命名操作,则返回其getBaseOperation(),否则返回操作。- 参数
 -  
              
op- 操作 - 结果
 - 基本操作的通过操作。
 
 
 -  
 
 -