JavaTM 2 Platform
Standard Ed. 6

javax.management.openmbean
類別 CompositeType

java.lang.Object
  繼承者 javax.management.openmbean.OpenType<CompositeData>
      繼承者 javax.management.openmbean.CompositeType
所有已實作的介面:
Serializable

public class CompositeType
extends OpenType<CompositeData>

CompositeType 類別是開放型別 類別,它的實例描述了 CompositeData 值的型別。

從以下版本開始:
1.5
另請參見:
序列化表格

欄位摘要
 
從類別 javax.management.openmbean.OpenType 繼承的欄位
ALLOWED_CLASSNAMES, ALLOWED_CLASSNAMES_LIST
 
建構子摘要
CompositeType(String typeName, String description, String[] itemNames, String[] itemDescriptions, OpenType<?>[] itemTypes)
          建構一個 CompositeType 實例,檢查給定參數的有效性。
 
方法摘要
 boolean containsKey(String itemName)
          如果此 CompositeType 實例定義了名稱為 itemName 的項,則返回 true
 boolean equals(Object obj)
          比較指定的 obj 參數與此 CompositeType 實例的相等性。
 String getDescription(String itemName)
          返回名稱是 itemName 的項的描述,如果此 CompositeType 實例未定義任何名稱是 itemName 的項,則返回 null
 OpenType<?> getType(String itemName)
          返回名稱是 itemName 的項的開放型別,如果 CompositeType 實例未定義任何名稱是 itemName 的項,則返回 null
 int hashCode()
          返回此 CompositeType 實例的雜湊碼值。
 boolean isValue(Object obj)
          測試 obj 是否為此 CompositeType 實例可以描述的值。
 Set<String> keySet()
          返回此 CompositeType 實例定義的所有項名稱的不可修改的 Set 視圖。
 String toString()
          返回此 CompositeType 實例的字元串表示形式。
 
從類別 javax.management.openmbean.OpenType 繼承的方法
getClassName, getDescription, getTypeName, isArray
 
從類別 java.lang.Object 繼承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

建構子詳細資訊

CompositeType

public CompositeType(String typeName,
                     String description,
                     String[] itemNames,
                     String[] itemDescriptions,
                     OpenType<?>[] itemTypes)
              throws OpenDataException
建構一個 CompositeType 實例,檢查給定參數的有效性。下面描述了每個參數的有效性約束。

注意,三個陣列參數(itemNamesitemDescriptionsitemTypes)的內容是內部複製的,因此此建構子的調用者對這些陣列的任何後續修改不會影響建構的 CompositeType 實例。

此復合型別表示的復合資料值的 Java 類別名(即 getClassName 方法返回的類別名)設置為 CompositeData.class.getName() 返回的字元串值。

參數:
typeName - 為此實例表示的復合型別給出的名稱;不可以為 null 或空字元串。
 
description - 此實例表示的復合型別的可讀描述;不可以為 null 或空字元串。
 
itemNames - 此 CompositeType 實例描述的復合資料值中包含的項名稱;不可以為 null,並且至少應包含一個元素;任何元素不可以為 null 或空字元串。注意,所給出的項名稱的順序對於區分 CompositeType 實例並不重要;項名稱按升序字典順序排序進行內部存儲。
 
itemDescriptions - 此 CompositeType 實例描述的復合資料值中已包含項的描述(與 itemNames 的順序相同);應與 itemNames 的大小相同;任何元素不可以為 null 或空字元串。
 
itemTypes - 描述此 CompositeType 實例描述的復合資料值中已包含項的開放型別實例(與 itemNames 的順序相同);應與 itemNames 的大小相同;任何元素不可以為 null。
 
拋出:
IllegalArgumentException - 如果 typeNamedescription 為 null 或空字元串;如果 itemNamesitemDescriptionsitemTypes 為 null;如果 itemNamesitemDescriptions 的任何元素為 null 或空字元串;如果 itemTypes 的任何元素為 null;如果 itemNamesitemDescriptionsitemTypes 的大小不同。
 
OpenDataException - 如果 itemNames 套件含重複的項名稱(區分大小寫,但是移除了前導和尾部空格)。
方法詳細資訊

containsKey

public boolean containsKey(String itemName)
如果此 CompositeType 實例定義了名稱為 itemName 的項,則返回 true

參數:
itemName - 項的名稱。
返回:
如果此名稱的項存在,則返回 true。

getDescription

public String getDescription(String itemName)
返回名稱是 itemName 的項的描述,如果此 CompositeType 實例未定義任何名稱是 itemName 的項,則返回 null

參數:
itemName - 項的名稱。
返回:
描述。

getType

public OpenType<?> getType(String itemName)
返回名稱是 itemName 的項的開放型別,如果 CompositeType 實例未定義任何名稱是 itemName 的項,則返回 null

參數:
itemName - 項的名稱。
返回:
型別。

keySet

public Set<String> keySet()
返回此 CompositeType 實例定義的所有項名稱的不可修改的 Set 視圖。集合的迭代器將按升序返回項名稱。

返回:
StringSet

isValue

public boolean isValue(Object obj)
測試 obj 是否為此 CompositeType 實例可以描述的值。

如果 obj 為 null,或者不是 javax.management.openmbean.CompositeData 的實例,則 isValue 返回 false

如果 objjavax.management.openmbean.CompositeData 的實例,然後設 ct 為其 CompositeType(由 CompositeData.getCompositeType() 返回)。那麼如果 this 可以通過 ct 進行分派,則結果為 true。可以通過 ct 進行分派的含義是:

如果 typeName索引名稱列表相同,且前者的行型別可以通過後者的行型別進行分派,則 TabularType 可以通過另一個 TabularType 進行分派。

如果維數相同;都是基本陣列或者都不是;前者的元素型別可以通過後者的元素型別進行分派,則 ArrayType 可以通過另一個 ArrayType 進行分派。

在其他情況下,只有兩者相等時 OpenType 才可以通過另一個 OpenType 進行分派。

這些規則意味著,可以將額外的項添加到 CompositeData 中,而不會使之對於沒有這些項的 CompositeType 無效。

指定者:
類別 OpenType<CompositeData> 中的 isValue
參數:
obj - 要測試其開放型別與此 CompositeType 的相等性的值。
返回:
如果 obj 是此復合型別的值,則返回 true,否則返回 false

equals

public boolean equals(Object obj)
比較指定的 obj 參數與此 CompositeType 實例的相等性。

當且僅當以下所有語句為 true 時,兩個 CompositeType 實例才相等:


 

指定者:
類別 OpenType<CompositeData> 中的 equals
參數:
obj - 與此 CompositeType 實例比較相等性的物件;如果 objnull,則 equals 返回 false
返回:
如果指定的物件等於此 CompositeType 實例,則返回 true
另請參見:
Object.hashCode(), Hashtable

hashCode

public int hashCode()
返回此 CompositeType 實例的雜湊碼值。

CompositeType 實例的雜湊碼是在 equals 比較中使用的所有資訊元素的雜湊碼的總和(即名稱、項名稱和項型別)。這確保了 t1.equals(t2) 意味著對於任何兩個 CompositeType 實例 t1t2 而言,都存在 t21.hashCode()==t2.hashCode(),這是方法 Object.hashCode() 的通用協定所要求的。

由於 CompositeType 實例是不可變的,此實例的雜湊碼在首次調用 hashCode 時被計算一次,然後對後續調用返回相同的值。

指定者:
類別 OpenType<CompositeData> 中的 hashCode
返回:
CompositeType 實例的雜湊碼值
另請參見:
Object.equals(java.lang.Object), Hashtable

toString

public String toString()
返回此 CompositeType 實例的字元串表示形式。

字元串表示形式由此類別(即 javax.management.openmbean.CompositeType)的名稱、此實例的型別名稱和項名稱的列表以及此實例的型別字元串表示形式組成。

由於 CompositeType 實例是不可變的,此實例的字元串表示形式在首次調用 toString 時被計算一次,然後對後續調用返回相同的值。

指定者:
類別 OpenType<CompositeData> 中的 toString
返回:
CompositeType 實例的字元串表示形式

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only