- 所有已实现的接口:
Serializable
CompositeType
类是开放式其实例描述CompositeData
值类型的类。
- 自从:
- 1.5
- 参见:
-
字段摘要
在类 javax.management.openmbean.OpenType 中声明的字段
ALLOWED_CLASSNAMES, ALLOWED_CLASSNAMES_LIST
-
构造方法总结
构造方法 -
方法总结
修饰符和类型方法描述boolean
containsKey
(String itemName) 如果此CompositeType
实例定义了名称为的项,则返回true
项目名.boolean
比较指定的obj
参数与此CompositeType
实例是否相等。getDescription
(String itemName) 返回名称为项目名, 或null
如果此CompositeType
实例未定义任何名称为项目名.OpenType<?>
返回开放式名称为项目名, 或null
如果此CompositeType
实例未定义任何名称为项目名.int
hashCode()
返回此CompositeType
实例的哈希码值。boolean
测试是否对象是一个可以由这个CompositeType
实例描述的值。keySet()
返回此CompositeType
实例定义的所有项目名称的不可修改的 Set 视图。toString()
返回此CompositeType
实例的字符串表示形式。在类 javax.management.openmbean.OpenType 中声明的方法
getClassName, getDescription, getTypeName, isArray
-
构造方法详细信息
-
CompositeType
public CompositeType(String typeName, String description, String [] itemNames, String [] itemDescriptions, OpenType <?>[] itemTypes) throws OpenDataException 构造一个CompositeType
实例,检查给定参数的有效性。下面针对每个参数描述了有效性约束。注意三个数组参数的内容itemNames, 项目描述和项目类型被内部复制,因此此构造函数的调用者对这些数组的任何后续修改都不会影响构造的
CompositeType
实例。此复合类型表示的复合数据值的 Java 类名(即
getClassName
方法返回的类名)设置为CompositeData.class.getName()
返回的字符串值。- 参数:
typeName
- 赋予此实例所代表的复合类型的名称;不能为 null 或空字符串。description
- 此实例表示的复合类型的人类可读描述;不能为 null 或空字符串。itemNames
- 此CompositeType
实例描述的复合数据值中包含的项目的名称;不能为空且应至少包含一个元素;没有元素可以是 null 或空字符串。请注意,给出项目名称的顺序对于区分CompositeType
实例与另一个实例并不重要;项目名称在内部存储,按字母数字升序排序。itemDescriptions
- 描述,顺序与itemNames此CompositeType
实例描述的复合数据值中包含的项目;应与大小相同itemNames;没有元素可以为 null 或空字符串。itemTypes
- 开放类型实例,顺序与itemNames描述包含在这个CompositeType
实例描述的复合数据值中的项目;应与大小相同itemNames;没有元素可以为空。- 抛出:
IllegalArgumentException
- 如果类型名称或者description是 null 或空字符串,或者itemNames或者项目描述或者项目类型为空,或任何元素itemNames或者项目描述是 null 或空字符串,或任何元素项目类型为空,或itemNames或者项目描述或者项目类型大小不一样。OpenDataException
- 如果itemNames包含重复的项目名称(区分大小写,但删除了前导和尾随空格)。
-
-
方法详情
-
containsKey
如果此CompositeType
实例定义了名称为的项,则返回true
项目名.- 参数:
itemName
- 项目名称。- 返回:
- 如果存在具有此名称的项目,则为真。
-
getDescription
返回名称为项目名, 或null
如果此CompositeType
实例未定义任何名称为项目名.- 参数:
itemName
- 项目名称。- 返回:
- 说明。
-
getType
返回开放式名称为项目名, 或null
如果此CompositeType
实例未定义任何名称为项目名.- 参数:
itemName
- 时间名称。- 返回:
- 方式。
-
keySet
返回此CompositeType
实例定义的所有项目名称的不可修改的 Set 视图。该集合的迭代器将按升序返回项目名称。 -
isValue
测试是否对象是一个可以由这个CompositeType
实例描述的值。如果对象为 null 或不是
javax.management.openmbean.CompositeData
的实例,isValue
返回false
。如果对象是
javax.management.openmbean.CompositeData
的一个实例,然后让ct
成为它的CompositeType
作为CompositeData.getCompositeType()
返回。如果this
为 assignable fromct
,则结果为真。这意味着:this.getTypeName()
等于ct.getTypeName()
,并且this
中不存在的项名称不存在于ct
中,并且- 对于
this
中的每个项目,其类型可根据ct
中相应项目的类型分配。
A
TabularType
可从另一个TabularType
分配,如果它们具有相同的 typeName 和 索引名称列表 ,并且第一个的 行类型 可从第二个的行类型分配。ArrayType
可从另一个ArrayType
分配,如果它们具有相同的 方面 ;两者都是 原始数组 或两者都不是;第一个的 元素类型 可以从第二个的元素类型分配。在所有其他情况下,一个
OpenType
仅当它们相等时才可从另一个OpenType
分配。这些规则意味着可以将额外的项目添加到
CompositeData
而不会使其对没有这些项目的CompositeType
无效。- 指定者:
isValue
在类OpenType<CompositeData>
中- 参数:
obj
- 要测试其开放类型与此CompositeType
实例的兼容性的值。- 返回:
true
如果对象是此复合类型的值,false
否则。
-
equals
比较指定的obj
参数与此CompositeType
实例是否相等。当且仅当以下所有陈述都为真时,两个
CompositeType
实例才相等:- 它们的类型名称相等
- 他们的项目名称和类型相同
- 指定者:
equals
在类OpenType<CompositeData>
中- 参数:
obj
- 要与此CompositeType
实例进行相等比较的对象;如果对象是null
,equals
返回false
。- 返回:
true
如果指定对象等于此CompositeType
实例。- 参见:
-
hashCode
public int hashCode()返回此CompositeType
实例的哈希码值。CompositeType
实例的哈希码是equals
比较中使用的所有信息元素的哈希码的总和(即:名称、项目名称、项目类型)。这确保t1.equals(t2)
暗示t1.hashCode()==t2.hashCode()
对于任何两个CompositeType
实例t1
和t2
,正如方法Object.hashCode()
的一般契约所要求的那样。由于
CompositeType
实例是不可变的,因此该实例的哈希码在第一次调用hashCode
时计算一次,然后为后续调用返回相同的值。 -
toString
返回此CompositeType
实例的字符串表示形式。字符串表示包含此类的名称(即
javax.management.openmbean.CompositeType
)、此实例的类型名称以及此实例的项目名称和类型字符串表示的列表。由于
CompositeType
实例是不可变的,因此该实例的字符串表示在第一次调用toString
时计算一次,然后为后续调用返回相同的值。- 指定者:
toString
在类OpenType<CompositeData>
中- 返回:
-
此
CompositeType
实例的字符串表示形式
-