JavaTM 2 Platform
Standard Ed. 5.0

javax.management.openmbean
类 ArrayType

java.lang.Object
  继承者 javax.management.openmbean.OpenType
      继承者 javax.management.openmbean.ArrayType
所有已实现的接口:
Serializable

public class ArrayType
extends OpenType
implements Serializable

ArrayType 类是一种开放类型 类,其实例描述了作为开放数据 值的 n 维数组的所有开放数据 值。

从以下版本开始:
1.5
另请参见:
序列化表格

字段摘要
 
从类 javax.management.openmbean.OpenType 继承的字段
ALLOWED_CLASSNAMES
 
构造方法摘要
ArrayType(int dimension, OpenType elementType)
          构造一个描述开放数据 值的 ArrayType 实例,该值是其元素的开放类型elementType、元素的维度为 dimension 的数组。
 
方法摘要
 boolean equals(Object obj)
          比较指定的 obj 参数与此 ArrayType 实例的相等性。
 int getDimension()
          返回此 ArrayType 实例所描述的数组的维度。
 OpenType getElementOpenType()
          返回此 ArrayType 实例所描述的数组中包含的元素值的开放类型
 int hashCode()
          返回此 ArrayType 实例的哈希码值。
 boolean isValue(Object obj)
          测试 obj 是否为此 ArrayType 实例的值。
 String toString()
          返回此 ArrayType 实例的字符串表示形式。
 
从类 javax.management.openmbean.OpenType 继承的方法
getClassName, getDescription, getTypeName, isArray
 
从类 java.lang.Object 继承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

构造方法详细信息

ArrayType

public ArrayType(int dimension,
                 OpenType elementType)
          throws OpenDataException
构造一个描述开放数据 值的 ArrayType 实例,该值是其元素的开放类型elementType、元素的维度为 dimension 的数组。

ArrayType 实例上调用时,getClassName 方法会返回它所描述的数组实例的类名(按照 java.lang.ClassgetName 方法定义的规则),而不是数组元素的类名(由对 getElementOpenType().getClassName() 的调用返回)。

还可以将对应于此 ArrayType 实例的类型名称的内部字段设置为它描述的数组实例的类名。换句话说,方法 getClassNamegetTypeName 返回相同的字符串值。将对应于此 ArrayType 实例的描述的内部字段设置为符合以下模板的字符串值:
<dimension>-dimension array of <element_class_name>

例如,以下代码片段:

 ArrayType t = new ArrayType(3, SimpleType.STRING);
 System.out.println("array class name       = "+ t.getClassName());
 System.out.println("element class name     = "+ t.getElementOpenType().getClassName());
 System.out.println("array type name        = "+ t.getTypeName());
 System.out.println("array type description = "+ t.getDescription());
 
将得到以下输出:
 array class name       = [[[java.lang.String;
 element class name     = java.lang.String
 array type name        = [[[java.lang.String;
 array type description = 3-dimension array of java.lang.String
 

参数:
dimension - 此 ArrayType 实例描述的数组的维度;必须大于或等于 1。
elementType - 此 ArrayType 实例描述的数组中包含的元素值的开放类型;必须是 SimpleTypeCompositeTypeTabularType 的一个实例。
抛出:
IllegalArgumentException - 如果 dimension 不是一个正整数
OpenDataException - 如果 elementTypeArrayType 的一个实例
方法详细信息

getDimension

public int getDimension()
返回此 ArrayType 实例所描述的数组的维度。

返回:
维度。

getElementOpenType

public OpenType getElementOpenType()
返回此 ArrayType 实例所描述的数组中包含的元素值的开放类型

返回:
元素类型。

isValue

public boolean isValue(Object obj)
测试 obj 是否为此 ArrayType 实例的值。

当且仅当 obj 不为 null,obj 是一个数组,并且下面任何一个条件为 true 时,此方法才返回 true

指定者:
OpenType 中的 isValue
参数:
obj - 要测试的对象。
返回:
如果 obj 是此 ArrayType 实例的一个值,则返回 true

equals

public boolean equals(Object obj)
比较指定的 obj 参数与此 ArrayType 实例的相等性。

当且仅当两个 ArrayType 实例描述具有相同维度和元素的开放类型的数组实例时,它们才相等。

指定者:
OpenType 中的 equals
参数:
obj - 与此 ArrayType 实例比较相等性的对象;如果 objnull,或者不是类 ArrayType 的一个实例,则 equals 返回 false
返回:
如果指定的对象等于此 ArrayType 实例,则返回 true
另请参见:
Object.hashCode(), Hashtable

hashCode

public int hashCode()
返回此 ArrayType 实例的哈希码值。

ArrayType 实例的哈希码是在 equals 比较中使用的信息的所有元素的哈希码总和(即:维度和元素的类型)。这确保 t1.equals(t2) 意味着对于任何两个 ArrayType 实例 t1t2 而言,都存在 t1.hashCode()==t2.hashCode(),这是方法 Object.hashCode() 的通用协定所要求的。

由于 ArrayType 实例是不可变的,此实例的哈希码在首次调用 hashCode 时计算一次,然后对于后续的调用返回相同的值。

指定者:
OpenType 中的 hashCode
返回:
ArrayType 实例的哈希码值
另请参见:
Object.equals(java.lang.Object), Hashtable

toString

public String toString()
返回此 ArrayType 实例的字符串表示形式。

字符串表示形式由此类(即:javax.management.openmbean.ArrayType)的名称和为此实例定义的类型名称、维度和元素类型组成。

由于 ArrayType 实例是不可变的,此实例的字符串表示形式在首次调用 toString 时计算一次,然后对于后续的调用返回相同的值。

指定者:
OpenType 中的 toString
返回:
ArrayType 实例的字符串表示形式

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策