|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectorg.apache.commons.lang.builder.ToStringBuilder
ToString を生成する処理です。
ToString generation routine.このクラスはより良い toString メソッドをクラスに実装する事を可能にします。 このクラスは以下の処理を単純化することを目的とします:
一般的な使用方法を以下に示します:
public class Person {
String name;
int age;
boolean isSmoker;
...
public String toString() {
return new ToStringBuilder(this).
append(name, "name").
append(age, "age").
append(smoker, "smoker").
toString();
}
}
これは以下のフォーマットの toString 生成します:
Person@7f54[name=Stephen,age=29,smoker=false]
もう一つの方法として、対象とするフィールドを決定する際にリフレクションを使用するメソッドがあります。
普通、対象となるフィールドは private であるため、この reflectionToString
メソッドは フィールドのアクセス制限を変更するために Field.setAccessible
を使用します。
これは適切なパーミッションが設定されていない限り、セキュリティマネージャが稼動している状態では行うことができません。
また、この方法は明らかに低速です。
reflectionToString, uses Field.setAccessible to change
the visibility of the fields. This will fail under a security manager,
unless the appropriate permissions are set. It is also slower than testing
explicitly.このメソッドの一般的な使用方法は以下の様になります:
public String toString() {
return ToStringBuilder.reflectionToString(this);
}
toString で使用される詳細なフォーマットはコンストラクタに渡される
ToStringStyle によって決定されます。
| フィールドの概要 | |
private StringBuffer |
buffer
現在の toString バッファ。 |
private static ToStringStyle |
defaultStyle
出力の際に使用されるデフォルトのスタイル。 |
private Object |
object
出力を行う対象となるオブジェクト。 |
private ToStringStyle |
style
出力の際に使用されるスタイル。 |
| コンストラクタの概要 | |
ToStringBuilder(Object object)
ToStringBuilder のコンストラクタです。 |
|
ToStringBuilder(Object object,
ToStringStyle style)
出力の際のスタイルを指定する ToStringBuilder のコンストラクタです。 |
|
ToStringBuilder(Object object,
ToStringStyle style,
StringBuffer buffer)
ToStringBuilder のコンストラクタです。 |
|
| メソッドの概要 | |
ToStringBuilder |
append(boolean value)
boolean の値を toString に追加します。 |
ToStringBuilder |
append(boolean[] array)
boolean の配列を toString に追加します。 |
ToStringBuilder |
append(byte value)
byte の値を toString に追加します。 |
ToStringBuilder |
append(byte[] array)
byte の配列を toString に追加します。 |
ToStringBuilder |
append(char value)
char の値を toString に追加します。 |
ToStringBuilder |
append(char[] array)
char の配列を toString に追加します。 |
ToStringBuilder |
append(double value)
double の値を toString に追加します。 |
ToStringBuilder |
append(double[] array)
double の配列を toString に追加します。 |
ToStringBuilder |
append(float value)
float の値を toString に追加します。 |
ToStringBuilder |
append(float[] array)
float の配列を toString に追加します。 |
ToStringBuilder |
append(int value)
int の値を toString に追加します。 |
ToStringBuilder |
append(int[] array)
int の配列を toString に追加します。 |
ToStringBuilder |
append(long value)
long の値を toString に追加します。 |
ToStringBuilder |
append(long[] array)
long の配列を toString に追加します。 |
ToStringBuilder |
append(Object object)
Object の値を toString に追加します。 |
ToStringBuilder |
append(Object[] array)
Object の配列を toString に追加します。 |
ToStringBuilder |
append(short value)
short の値を toString に追加します。 |
ToStringBuilder |
append(short[] array)
short の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
boolean value)
boolean の値を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
boolean[] array)
boolean の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
boolean[] array,
boolean fullDetail)
boolean の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
byte value)
byte の値を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
byte[] array)
byte の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
byte[] array,
boolean fullDetail)
byte の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
char value)
char の値を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
char[] array)
char の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
char[] array,
boolean fullDetail)
char の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
double value)
double の値を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
double[] array)
double の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
double[] array,
boolean fullDetail)
double の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
float value)
float の値を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
float[] array)
float の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
float[] array,
boolean fullDetail)
float の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
int value)
int の値を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
int[] array)
int の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
int[] array,
boolean fullDetail)
int の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
long value)
long の値を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
long[] array)
long の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
long[] array,
boolean fullDetail)
long の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
Object object)
Object の値を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
Object[] array)
Object の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
Object[] array,
boolean fullDetail)
Object の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
Object object,
boolean fullDetail)
Object の値を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
short value)
short の値を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
short[] array)
short の配列を toString に追加します。 |
ToStringBuilder |
append(String fieldName,
short[] array,
boolean fullDetail)
short の配列を toString に追加します。 |
static ToStringStyle |
getDefaultStyle()
デフォルトのスタイルを取得します。 |
StringBuffer |
getStringBuffer()
内部で使用されているバッファを取得します。 |
static String |
reflectionToString(Object object)
このメソッドは一連の toString の生成にリフレクションを使用し、出力にデフォルトのスタイルを使用します。 |
static String |
reflectionToString(Object object,
ToStringStyle style)
このメソッドは一連の toString の生成にリフレクションを使用します。 |
static String |
reflectionToString(Object object,
ToStringStyle style,
boolean outputTransients)
このメソッドは一連の toString の生成にリフレクションを使用します。 |
static void |
setDefaultStyle(ToStringStyle style)
使用するデフォルトのスタイルを設定します。 |
String |
toString()
生成された toString の結果を返します。 |
| クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| フィールドの詳細 |
private static ToStringStyle defaultStyle
private final StringBuffer buffer
private final ToStringStyle style
private final Object object
| コンストラクタの詳細 |
public ToStringBuilder(Object object)
setDefaultStyle
で設定されたデフォルトのスタイルを使用します。
setDefaultStyle.
object - toString を生成する対象となるオブジェクト、null でない必要があります
IllegalArgumentException - 渡されたオブジェクトが null だった場合
public ToStringBuilder(Object object,
ToStringStyle style)
style が null だった場合にはデフォルトのスタイルが使用されます。
object - toString を生成する対象となるオブジェクト、null でない必要があります
style - toString を生成する際のスタイル、 null を許容します
IllegalArgumentException - 渡されたオブジェクトが null だった場合
public ToStringBuilder(Object object,
ToStringStyle style,
StringBuffer buffer)
style が null だった場合にはデフォルトのスタイルが使用されます。 buffer が null だった場合には新たなバッファを生成します。
object - toString を生成する対象となるオブジェクト、null でない必要があります
style - toString を生成する際のスタイル、 null を許容します
buffer - 処理に使用される文字列バッファ、 null を許容します
IllegalArgumentException - 渡されたオブジェクトが null だった場合
| メソッドの詳細 |
public static ToStringStyle getDefaultStyle()
このメソッドはアプリケーション全体の toString スタイルを1度の呼び出しでコントロールすることを可能とします。 これによって開発中には詳細な toString の出力を行い、運用時には簡潔な出力を行うといった使用法が可能です。
public static void setDefaultStyle(ToStringStyle style)
style - デフォルトの toString スタイル
IllegalArgumentException - スタイルが null だった場合
public static String reflectionToString(Object object)
このメソッドは private フィールドの値を取得するために Field.setAccessible を使用します。 これはセキュリティマネージャが稼動していて、適切なパーミッションが設定されていない場合、 セキュリティ例外が投げられることを意味します。 このメソッドは明らかに非効率です。 transient メンバーは、おそらくフィールドの値から取得されたものでオブジェクトの値とはならないと考え、 処理の対象としません。 static フィールドは処理の対象にはなりません。
object - 出力対象となるオブジェクト
IllegalArgumentException - object が null だった場合
public static String reflectionToString(Object object,
ToStringStyle style)
このメソッドは private フィールドの値を取得するために Field.setAccessible を使用します。 これはセキュリティマネージャが稼動していて、適切なパーミッションが設定されていない場合、 セキュリティ例外が投げられることを意味します。 このメソッドは明らかに非効率です。 transient メンバーは、おそらくフィールドの値から取得されたものでオブジェクトの値とはならないと考え、 処理の対象としません。 static フィールドは処理の対象にはなりません。
style が null だった場合にはデフォルトのスタイルが使用されます。
object - 出力対象となるオブジェクト
style - toString を生成する際のスタイル、 null を許容します
IllegalArgumentException - objectが null だった場合
public static String reflectionToString(Object object,
ToStringStyle style,
boolean outputTransients)
このメソッドは private フィールドの値を取得するために Field.setAccessible を使用します。 これはセキュリティマネージャが稼動していて、適切なパーミッションが設定されていない場合、 セキュリティ例外が投げられることを意味します。 このメソッドは明らかに非効率です。 testTransients 引数に true が設定された場合 transient メンバーを処理の対象とし、 false が設定された場合にはフィールドの値から取得されたものでオブジェクトの値とはならないとみなし、 transient メンバーを無視します。 static フィールドは処理の対象にはなりません。
style が null だった場合にはデフォルトのスタイルが使用されます。
object - 出力対象となるオブジェクト
style - toString を生成する際のスタイル、 null を許容します
outputTransients - transient フィールドを含めるかどうか
IllegalArgumentException - object が null だった場合
public ToStringBuilder append(Object object)
object - toString に加える値
public ToStringBuilder append(String fieldName,
Object object)
object - toString に加える値
fieldName - フィールド名
public ToStringBuilder append(String fieldName,
Object object,
boolean fullDetail)
object - toString に加える値
fieldName - フィールド名
fullDetail - true for detail, false for summary info
public ToStringBuilder append(long value)
value - toString に加える値
public ToStringBuilder append(String fieldName,
long value)
value - toString に加える値
fieldName - フィールド名
public ToStringBuilder append(int value)
value - toString に加える値
public ToStringBuilder append(String fieldName,
int value)
value - toString に加える値
fieldName - フィールド名
public ToStringBuilder append(short value)
value - toString に加える値
public ToStringBuilder append(String fieldName,
short value)
value - toString に加える値
fieldName - フィールド名
public ToStringBuilder append(char value)
value - toString に加える値
public ToStringBuilder append(String fieldName,
char value)
value - toString に加える値
fieldName - フィールド名
public ToStringBuilder append(byte value)
value - toString に加える値
public ToStringBuilder append(String fieldName,
byte value)
value - toString に加える値
fieldName - フィールド名
public ToStringBuilder append(double value)
value - toString に加える値
public ToStringBuilder append(String fieldName,
double value)
value - toString に加える値
fieldName - フィールド名
public ToStringBuilder append(float value)
value - toString に加える値
public ToStringBuilder append(String fieldName,
float value)
value - toString に加える値
fieldName - フィールド名
public ToStringBuilder append(boolean value)
value - toString に加える値
public ToStringBuilder append(String fieldName,
boolean value)
value - toString に加える値
fieldName - フィールド名
public ToStringBuilder append(Object[] array)
array - toString に加える配列
public ToStringBuilder append(String fieldName,
Object[] array)
fieldName - フィールド名
array - toString に加える配列
public ToStringBuilder append(String fieldName,
Object[] array,
boolean fullDetail)
boolean の引数は詳細情報の表示の程度をコントロールします。 true が設定された場合には配列内の全ての情報を出力し、 false が設定された場合には概要(一般的に配列のサイズ)を出力します。
fieldName - フィールド名
array - toString に加える配列
fullDetail - true for detail, false for summary info
public ToStringBuilder append(long[] array)
array - toString に加える配列
public ToStringBuilder append(String fieldName,
long[] array)
fieldName - フィールド名
array - the array to add to the hashCode
public ToStringBuilder append(String fieldName,
long[] array,
boolean fullDetail)
boolean の引数は詳細情報の表示の程度をコントロールします。 true が設定された場合には配列内の全ての情報を出力し、 false が設定された場合には概要(一般的に配列のサイズ)を出力します。
fieldName - フィールド名
array - toString に加える配列
fullDetail - true for detail, false for summary info
public ToStringBuilder append(int[] array)
array - toString に加える配列
public ToStringBuilder append(String fieldName,
int[] array)
fieldName - フィールド名
array - the array to add to the hashCode
public ToStringBuilder append(String fieldName,
int[] array,
boolean fullDetail)
boolean の引数は詳細情報の表示の程度をコントロールします。 true が設定された場合には配列内の全ての情報を出力し、 false が設定された場合には概要(一般的に配列のサイズ)を出力します。
fieldName - フィールド名
array - toString に加える配列
fullDetail - true for detail, false for summary info
public ToStringBuilder append(short[] array)
array - toString に加える配列
public ToStringBuilder append(String fieldName,
short[] array)
fieldName - フィールド名
array - the array to add to the hashCode
public ToStringBuilder append(String fieldName,
short[] array,
boolean fullDetail)
boolean の引数は詳細情報の表示の程度をコントロールします。 true が設定された場合には配列内の全ての情報を出力し、 false が設定された場合には概要(一般的に配列のサイズ)を出力します。
fieldName - フィールド名
array - toString に加える配列
fullDetail - true for detail, false for summary info
public ToStringBuilder append(char[] array)
array - toString に加える配列
public ToStringBuilder append(String fieldName,
char[] array)
fieldName - フィールド名
array - the array to add to the hashCode
public ToStringBuilder append(String fieldName,
char[] array,
boolean fullDetail)
boolean の引数は詳細情報の表示の程度をコントロールします。 true が設定された場合には配列内の全ての情報を出力し、 false が設定された場合には概要(一般的に配列のサイズ)を出力します。
fieldName - フィールド名
array - toString に加える配列
fullDetail - true for detail, false for summary info
public ToStringBuilder append(byte[] array)
array - toString に加える配列
public ToStringBuilder append(String fieldName,
byte[] array)
fieldName - フィールド名
array - the array to add to the hashCode
public ToStringBuilder append(String fieldName,
byte[] array,
boolean fullDetail)
boolean の引数は詳細情報の表示の程度をコントロールします。 true が設定された場合には配列内の全ての情報を出力し、 false が設定された場合には概要(一般的に配列のサイズ)を出力します。
fieldName - フィールド名
array - toString に加える配列
fullDetail - true for detail, false for summary info
public ToStringBuilder append(double[] array)
array - toString に加える配列
public ToStringBuilder append(String fieldName,
double[] array)
fieldName - フィールド名
array - the array to add to the hashCode
public ToStringBuilder append(String fieldName,
double[] array,
boolean fullDetail)
boolean の引数は詳細情報の表示の程度をコントロールします。 true が設定された場合には配列内の全ての情報を出力し、 false が設定された場合には概要(一般的に配列のサイズ)を出力します。
fieldName - フィールド名
array - toString に加える配列
fullDetail - true for detail, false for summary info
public ToStringBuilder append(float[] array)
array - toString に加える配列
public ToStringBuilder append(String fieldName,
float[] array)
fieldName - フィールド名
array - the array to add to the hashCode
public ToStringBuilder append(String fieldName,
float[] array,
boolean fullDetail)
boolean の引数は詳細情報の表示の程度をコントロールします。 true が設定された場合には配列内の全ての情報を出力し、 false が設定された場合には概要(一般的に配列のサイズ)を出力します。
fieldName - フィールド名
array - toString に加える配列
fullDetail - true for detail, false for summary info
public ToStringBuilder append(boolean[] array)
array - toString に加える配列
public ToStringBuilder append(String fieldName,
boolean[] array)
fieldName - フィールド名
array - the array to add to the hashCode
public ToStringBuilder append(String fieldName,
boolean[] array,
boolean fullDetail)
boolean の引数は詳細情報の表示の程度をコントロールします。 true が設定された場合には配列内の全ての情報を出力し、 false が設定された場合には概要(一般的に配列のサイズ)を出力します。
fieldName - フィールド名
array - toString に加える配列
fullDetail - true for detail, false for summary info
public StringBuffer getStringBuffer()
public String toString()
|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||