java.lang.Object
javax.management.openmbean.OpenType<T>
- 型パラメータ:
T
- この型で記述されたインスタンスが保持する必要のあるJava型。 たとえば、SimpleType.INTEGER
は、OpenType<Integer>
のサブクラスであるSimpleType<Integer>
で、これはSimpleType.INTEGER
として記述された属性、パラメータ、または戻り値がJava型Integer
を持つ必要があることを意味する。
- すべての実装されたインタフェース:
Serializable
- 直系の既知のサブクラス:
ArrayType
,CompositeType
,SimpleType
,TabularType
public abstract class OpenType<T> extends Object implements Serializable
OpenType
クラスは、実際の公開データ値の公開型を記述するすべてのクラスの親abstractクラスです。
公開型は次の項目によって定義されます。
- この型が記述する公開データ値の完全修飾Javaクラス名。なお、公開データ値に許可されるJavaクラスのセットは限定されている(
ALLOWED_CLASSNAMES_LIST
を参照) - 名前
- 説明
- 導入されたバージョン:
- 1.5
- 関連項目:
-
フィールドのサマリー
-
コンストラクタのサマリー
-
メソッドのサマリー
修飾子と型メソッド説明abstract boolean
指定されたobj
パラメータとこの公開型インスタンスが等しいかどうかを比較します。この公開型が記述する公開データ値の完全修飾Javaクラス名を返します。このOpenType
インスタンスを記述するテキスト文字列を返します。このOpenType
インスタンスの名前を返します。abstract int
hashCode()
オブジェクトのハッシュ・コード値を返します。boolean
isArray()
この公開型が記述する公開データ値が配列の場合はtrue
を返し、そうでない場合はfalse
を返します。abstract boolean
objが、この公開型の値であるかどうかをテストします。abstract String
toString()
この公開型インスタンスの文字列表現を返します。
-
フィールド詳細
-
ALLOWED_CLASSNAMES_LIST
公開データ値に許可される完全修飾Javaクラス名のリストです。 次のいずれかのクラスまたはその対応するプリミティブ型の多次元配列も、公開データ値で許可されるクラスです。ALLOWED_CLASSNAMES_LIST = { "java.lang.Void", "java.lang.Boolean", "java.lang.Character", "java.lang.Byte", "java.lang.Short", "java.lang.Integer", "java.lang.Long", "java.lang.Float", "java.lang.Double", "java.lang.String", "java.math.BigDecimal", "java.math.BigInteger", "java.util.Date", "javax.management.ObjectName", CompositeData.class.getName(), TabularData.class.getName() } ;
-
ALLOWED_CLASSNAMES
@Deprecated public static final String[] ALLOWED_CLASSNAMES非推奨。代わりにALLOWED_CLASSNAMES_LIST
を使用してください。
-
-
コンストラクタの詳細
-
OpenType
protected OpenType(String className, String typeName, String description) throws OpenDataException OpenType
インスタンスを構築し(OpenType
となるサブクラスのインスタンスは実際にはabstractクラス)、指定されたパラメータの妥当性を検査します。 各パラメータの妥当性の制約は、次に説明します。
- パラメータ:
className
- この公開型が記述する公開データ値の完全修飾Javaクラス名。 公開データ値に許可された有効なJavaクラス名は、ALLOWED_CLASSNAMES_LIST
に一覧されている。 これらのいずれかのクラスまたは対応するプリミティブ型の多次元配列も許可クラスになる。この場合、クラス名はjava.lang.Class
のgetName()
メソッドで定義されたルールに従う。 たとえば、3次元のString配列はクラス名"[[[Ljava.lang.String;
" (引用符なし)を持つ。
typeName
- このインスタンスが示す公開型に付与する名前。nullまたは空文字列は使用できない。
description
- このインスタンスが示す公開型についての人間が読める形式の説明。
- 例外:
IllegalArgumentException
- className、typeName、またはdescriptionがnullまたは空文字列の場合
OpenDataException
- classNameが公開データに許可されたJavaクラス名でない場合
-
-
メソッドの詳細
-
getClassName
public String getClassName()この公開型が記述する公開データ値の完全修飾Javaクラス名を返します。 公開データ値に許可された有効なJavaクラス名のみが、ALLOWED_CLASSNAMES_LIST
に一覧されます。 これらのいずれかのクラスまたは対応するプリミティブ型の多次元配列も許可クラスになる。この場合、クラス名はjava.lang.Class
のgetName()
メソッドで定義されたルールに従う。 たとえば、3次元のString配列はクラス名"[[[Ljava.lang.String;
" (引用符なし)を持ち、3次元のInteger配列はクラス名"[[[Ljava.lang.Integer;
" (引用符なし)を持ち、3次元のint配列はクラス名"[[[I
" (引用符なし)を持ちます。- 戻り値:
- クラス名。
-
getTypeName
public String getTypeName()このOpenType
インスタンスの名前を返します。- 戻り値:
- 型名。
-
getDescription
public String getDescription()このOpenType
インスタンスを記述するテキスト文字列を返します。- 戻り値:
- 説明。
-
isArray
public boolean isArray()この公開型が記述する公開データ値が配列の場合はtrue
を返し、そうでない場合はfalse
を返します。- 戻り値:
- これが配列型である場合はtrue。
-
isValue
public abstract boolean isValue(Object obj) objが、この公開型の値であるかどうかをテストします。- パラメータ:
obj
- 妥当性を判定されるオブジェクト。- 戻り値:
- objがこの公開型の値である場合は
true
、そうでない場合はfalse
。
-
equals
public abstract boolean equals(Object obj) 指定されたobj
パラメータとこの公開型インスタンスが等しいかどうかを比較します。 -
hashCode
public abstract int hashCode()次のクラスからコピーされた説明:Object
オブジェクトのハッシュ・コード値を返します。 このメソッドは、HashMap
によって提供されるハッシュ表などの、ハッシュ表の利点のためにサポートされています。hashCode
の一般的な規則は次のとおりです。- Javaアプリケーションの実行中に同じオブジェクトに対して複数回呼び出された場合は常に、このオブジェクトに対する
equals
の比較で使用される情報が変更されていなければ、hashCode
メソッドは常に同じ整数を返す必要があります。 ただし、この整数は同じアプリケーションの実行ごとに同じである必要はありません。 - 2つのオブジェクトが
equals
メソッドに従って等しい場合、2つのオブジェクトのそれぞれでhashCode
メソッドを呼び出すと、同じ整数結果が生成される必要があります。 - 2つのオブジェクトが
equals
メソッドに従って等しくない場合、2つのオブジェクトのそれぞれでhashCode
メソッドを呼び出すと、個別の整数結果が生成される必要はありません。 ただし、プログラマは、等しくないオブジェクトに対して異なる整数の結果を生成すると、ハッシュ表のパフォーマンスが向上する可能性があることに注意するようにしてください。
- Javaアプリケーションの実行中に同じオブジェクトに対して複数回呼び出された場合は常に、このオブジェクトに対する
-
toString
public abstract String toString()この公開型インスタンスの文字列表現を返します。
-
ALLOWED_CLASSNAMES_LIST
を使用してください。