|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjavax.management.ImmutableDescriptor
public class ImmutableDescriptor
不変記述子
| フィールドの概要 | |
|---|---|
static ImmutableDescriptor |
EMPTY_DESCRIPTOR
空の記述子 |
| コンストラクタの概要 | |
|---|---|
ImmutableDescriptor(Map<String,?> fields)
フィールドの名前と値が指定した Map のキーと値である記述子を構築します。 |
|
ImmutableDescriptor(String... fields)
指定されたフィールドを含む記述子を構築します。 |
|
ImmutableDescriptor(String[] fieldNames,
Object[] fieldValues)
指定されたフィールドおよび値を含む記述子を構築します。 |
|
| メソッドの概要 | |
|---|---|
Descriptor |
clone()
この記述子と等価な記述子を返します。 |
boolean |
equals(Object o)
この記述子と指定されたオブジェクトを比較します。 |
String[] |
getFieldNames()
記述子内のすべてのフィールド名を返します。 |
String[] |
getFields()
この記述子に含まれるすべてのフィールドを単一の文字列配列として返します。 |
Object |
getFieldValue(String fieldName)
特定のフィールド名の値を返します。 |
Object[] |
getFieldValues(String... fieldNames)
記述子内のすべてのフィールドの値を Object の配列として返します。 |
int |
hashCode()
この記述子のハッシュコード値を返します。 |
boolean |
isValid()
すべてのフィールドに名前が付与されていて値が有効な場合、true を返します。 |
void |
removeField(String fieldName)
記述子からフィールドを削除します。 |
void |
setField(String fieldName,
Object fieldValue)
このクラスは不変であるため、この操作はサポートされていません。 |
void |
setFields(String[] fieldNames,
Object[] fieldValues)
このクラスは不変であるため、この操作はサポートされていません。 |
String |
toString()
オブジェクトの文字列表現を返します。 |
static ImmutableDescriptor |
union(Descriptor... descriptors)
内容が指定した記述子の和集合である ImmutableDescriptor を返します。 |
| クラス java.lang.Object から継承されたメソッド |
|---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
| フィールドの詳細 |
|---|
public static final ImmutableDescriptor EMPTY_DESCRIPTOR
| コンストラクタの詳細 |
|---|
public ImmutableDescriptor(String[] fieldNames,
Object[] fieldValues)
IllegalArgumentException - いずれかの配列が null の場合、 配列のサイズが異なる場合、 フィールド名が null または空の場合、または同一のフィールド名が 複数回出現する場合public ImmutableDescriptor(String... fields)
fieldName=fieldValue の形式にする必要があります。フィールド名は、最初の = 文字までです。たとえば、String が a=b=c の場合、フィールド名は a で、値は b=c です。
IllegalArgumentException - パラメータが null の場合、フィールド名が空の場合、同一のフィールド名が複数回出現する場合、 または文字列のいずれかが = 文字を含んでいない場合。public ImmutableDescriptor(Map<String,?> fields)
フィールドの名前と値が指定した Map のキーと値である記述子を構築します。
IllegalArgumentException - パラメータが null の場合、 フィールド名が null または空の場合、または同一のフィールド名が 複数回出現する場合 (フィールド名の大文字と小文字が区別されない場合に 発生することがある)| メソッドの詳細 |
|---|
public static ImmutableDescriptor union(Descriptor... descriptors)
内容が指定した記述子の和集合である ImmutableDescriptor を返します。結果には、各記述子内に出現する全フィールドが、メソッド呼び出し時点でのそのフィールドの値とともに表示されます。その後、記述子を変更しても、ここで返される ImmutableDescriptor は影響を受けません。
もっとも単純なケースでは、記述子は 1 つだけで、返される ImmutableDescriptor はこのメソッドの呼び出し時のフィールドのコピーになります。
Descriptor d = something(); ImmutableDescriptor copy = ImmutableDescriptor.union(d);
descriptors - 結合する記述子。記述子のいずれかが null である場合、 それはスキップされる
ImmutableDescriptor。入力記述子のいずれかが必須フィールドをすべて含む ImmutableDescriptor である場合、返されるオブジェクトはその記述子と同じになる可能性がある。
IllegalArgumentException - 2 つの記述子に同一のフィールド名が存在するが、 それぞれに関連付けられた値が異なる場合。プリミティブ配列値は、 要素および型が同じ場合に、 同一と見なされる。オブジェクト配列値は、Arrays.deepEquals(Object[],Object[]) が true を返す場合に、 同一と見なされるpublic final Object getFieldValue(String fieldName)
Descriptor の記述:
Descriptor 内の getFieldValuefieldName - フィールド名。
public final String[] getFields()
Descriptor の記述:
Descriptor 内の getFieldsDescriptor.setFields(java.lang.String[], java.lang.Object[])public final Object[] getFieldValues(String... fieldNames)
Descriptor の記述:fieldNames String 配列パラメータの場合と同じになります。
Descriptor 内の getFieldValuesfieldNames - 値が返されるフィールドの名前で構成される 文字列配列。配列が空の場合、 空の配列が返される。配列が null の場合、 パラメータが Descriptor.getFieldNames() により返された配列であるかのように、 すべての値が返される。配列内のフィールド名が存在しない場合 (フィールド名が null または空の文字列である場合を含む)、返される対応する配列要素に対して null が返される
fieldNames のリストが 空の場合、空の配列が返されるpublic final String[] getFieldNames()
Descriptor の記述:
Descriptor 内の getFieldNamespublic boolean equals(Object o)
Arrays.deepEquals(Object[],Object[]) が true を返さなければならない。Object.equals(Object) が true を返さなければならない。
Descriptor 内の equalsObject 内の equalso - 比較対象のオブジェクト
true、 そうでない場合は falseObject.hashCode(),
Hashtablepublic int hashCode()
この記述子のハッシュコード値を返します。ハッシュコードは、記述子内の各フィールドのハッシュコードの合計になります。名前が n で、値が v のフィールドのハッシュコードは、n.toLowerCase().hashCode() ^ h になります。ここで、h は v のハッシュコードです。計算方法は次のとおりです。
v が null の場合、h は 0 になる。v がプリミティブ配列の場合、java.util.Arrays.hashCode の適切なオーバーロードを使用して h が計算される。v がオブジェクト配列の場合、Arrays.deepHashCode(Object[]) を使用して h が計算される。h は v.hashCode() になる。
Descriptor 内の hashCodeObject 内の hashCodeObject.equals(java.lang.Object),
Hashtablepublic String toString()
Object の記述:toString メソッドはこのオブジェクトを「テキストで表現する」文字列を返します。この結果は、人間が読める簡潔で有益な情報であるべきです。すべてのサブクラスで、このメソッドをオーバーライドすることをお勧めします。
Object クラスの toString メソッドは、オブジェクトの派生元のクラス名、アットマーク (@)、およびオブジェクトのハッシュコードの符号なし 16 進表現から構成される文字列を返します。つまり、このメソッドは次の値と等しい文字列を返します。
getClass().getName() + '@' + Integer.toHexString(hashCode())
Object 内の toStringpublic boolean isValid()
Descriptor 内の isValidRuntimeOperationsException - 妥当性検査に失敗した場合。記述子が無効の場合、このメソッドは false を返すが、 妥当性を判断しようとして失敗するとこの例外をスローするpublic Descriptor clone()
この記述子と等価な記述子を返します。返される記述子を変更してもこの記述子は影響を受けず、この記述子を変更しても返される記述子は影響を受けません。
このメソッドは、呼び出されるオブジェクトを返します。規約を満たす場合は、サブクラスでこれをオーバーライドして別のオブジェクトを返すことができます。
Descriptor 内の cloneObject 内の cloneRuntimeOperationsException - フィールド名またはフィールド値が不正である場合。なんらかの理由で記述子の作成に失敗した場合、この例外がスローされるCloneable
public final void setFields(String[] fieldNames,
Object[] fieldValues)
throws RuntimeOperationsException
UnsupportedOperationException をラップする RuntimeOperationsException がスローされます。それ以外の場合、可変記述子の場合と同じ動作になります。つまり、不正なパラメータのために例外がスローされるか、何も実行されないかのどちらかになります。
Descriptor 内の setFieldsfieldNames - フィールド名の文字列配列。配列および配列要素は、 null にはできないfieldValues - 対応するフィールド値から成るオブジェクト配列。配列は null 以外。配列要素は null の場合もある
RuntimeOperationsException - なんらかの理由で変更が失敗した場合。fieldNames または fieldValues が null の場合、 配列の長さが異なる場合、 または、それらのいずれかに不正な値が存在する場合に、 ラップされた例外は IllegalArgumentException になる。記述子が不変で、呼び出しによりその内容が変更される場合、ラップされた例外は UnsupportedOperationException になる。Descriptor.getFields()
public final void setField(String fieldName,
Object fieldValue)
throws RuntimeOperationsException
UnsupportedOperationException をラップする RuntimeOperationsException がスローされます。それ以外の場合、可変記述子の場合と同じ動作になります。つまり、不正なパラメータのために例外がスローされるか、何も実行されないかのどちらかになります。
Descriptor 内の setFieldfieldName - 設定されるフィールド名。null や空文字列は使用できないfieldValue - フィールド名として設定される 値。null がフィールドで有効な値であれば、null も使用できる
RuntimeOperationsException - フィールド名またはフィールド値が不正な場合 (ラップされた例外は IllegalArgumentException)、または記述子が不変な場合 (ラップされた例外は UnsupportedOperationException)。public final void removeField(String fieldName)
Descriptor 内の removeFieldfieldName - 削除されるフィールドの文字列名。フィールド名が不正であるか、フィールドが見つからない場合、 例外はスローされない
RuntimeOperationsException - 指定した名前のフィールドが存在し、 記述子が不変の場合。ラップされた例外は、 UnsupportedOperationException になる
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。