public class TabularType extends OpenType<TabularData>
TabularType
类是开放类,其实例描述了TabularData
值的类型。
ALLOWED_CLASSNAMES, ALLOWED_CLASSNAMES_LIST
Constructor and Description |
---|
TabularType(String typeName, String description, CompositeType rowType, String[] indexNames)
构造一个
TabularType 实例,检查给定参数的有效性。
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj)
将指定的
obj 参数与此
TabularType 实例相比较。
|
List<String> |
getIndexNames()
以与给该实例的构造函数相同的顺序返回一个不可修改的列的名称,其值用于唯一地索引此
TabularType 实例描述的表格数据值的每个行元素。
|
CompositeType |
getRowType()
返回此
TabularType 实例描述的表格数据值的行元素的类型。
|
int |
hashCode()
返回此
TabularType 实例的哈希码值。
|
boolean |
isValue(Object obj)
测试
obj是否可以由此
TabularType 实例描述的值。
|
String |
toString()
返回此
TabularType 实例的字符串表示形式。
|
getClassName, getDescription, getTypeName, isArray
public TabularType(String typeName, String description, CompositeType rowType, String[] indexNames) throws OpenDataException
TabularType
实例,检查给定参数的有效性。
以下对每个参数描述有效性约束。
该表格类型表示的表格数据值的Java类名称(即由getClassName
方法返回的类名称)设置为由TabularData.class.getName()
返回的字符串值。
typeName
- 此实例表示的表格类型的名称;
不能为null或空字符串。
description
- 此实例表示的表格类型的人类可读描述;
不能为null或空字符串。
rowType
- 此表格类型实例描述的表格数据值的行元素的类型;
不能为空。
indexNames
- 其值用于唯一索引此表格类型实例描述的表格数据值中每个行元素的项的名称;
不能为null或空。
每个元素应该是在rowType中定义的项目名称(不允许空字符串或空字符串)。
需要注意的是,在indexNames项目名称的顺序使用的方法是很重要的get
和remove
类TabularData
以符合他们的价值观参数数组项。
IllegalArgumentException
- 如果
rowType为空,或
indexNames为空或空数组,或
indexNames中的元素为空或空字符串,或
typeName或
description为空或空字符串。
OpenDataException
- 如果元素的
indexNames值不是在
rowType中定义的项目名称。
public CompositeType getRowType()
TabularType
实例描述的表格数据值的行元素的类型。
public List<String> getIndexNames()
以与给该实例的构造函数相同的顺序返回一个不可修改的列的名称,它们的值用于唯一地索引此TabularType
实例描述的表格数据值的每个行元素。
public boolean isValue(Object obj)
TabularType
实例描述的值。
如果obj为空或不是javax.management.openmbean.TabularData
的实例, javax.management.openmbean.TabularData
isValue
返回false
。
如果obj的实例javax.management.openmbean.TabularData
,说td
,结果为真,如果这TabularType
是从分配 td.getTabularType()
,如定义CompositeType.isValue
。
isValue
在
OpenType<TabularData>
obj
- 要与此
TabularType
实例兼容的开放类型的值。
true
如果
obj是此表格类型的值,
false
false。
public boolean equals(Object obj)
obj
参数与此TabularType
实例相比较。
当且仅当以下所有语句都为真时,两个TabularType
实例相等:
equals
在
OpenType<TabularData>
obj
- 要与此TabularType
实例相等的对象;
如果obj为null
, equals
返回false
。
true
如果指定的对象等于这个
TabularType
实例。
Object.hashCode()
, HashMap
public int hashCode()
TabularType
实例的哈希码值。
TabularType
实例的哈希码是equals
比较(即:名称,行类型,索引名称)中使用的所有信息元素的哈希码的总和。 这确保了t1.equals(t2)
意味着t1.hashCode()==t2.hashCode()
任何两个TabularType
实例t1
和t2
,根据方法Object.hashCode()
的一般合同的要求 。
由于TabularType
实例是不可变的,因此在第一次调用hashCode
时,该实例的哈希码将被计算一次,然后为后续调用返回相同的值。
hashCode
在
OpenType<TabularData>
TabularType
实例的哈希码值
Object.equals(java.lang.Object)
,
System.identityHashCode(java.lang.Object)
public String toString()
TabularType
实例的字符串表示形式。
字符串表示由此类的名称(即javax.management.openmbean.TabularType
),此实例的类型名称,此实例的行类型字符串表示形式和此实例的索引名称组成。
由于TabularType
实例是不可变的,因此在第一次调用toString
时,该实例的字符串表示计算一次,然后为后续调用返回相同的值。
toString
在
OpenType<TabularData>
TabularType
实例的字符串表示形式