#contents
toStringをうまくオーバーライドするか否かでそのクラスの使い易さが大きく変わります。
もし優れたtoStringを実装すれば、デバッグが楽になります。

* サンプル [#x88020b3]
#sh(java){{
System.out.println("Failed to connect:" + phoneNumber);
}}
このとき
#sh(java){{
Failed to connect: 03-xxxx-xxxx
}}
と表示されたらうれしいですが、
#sh(java){{
Failed to connect: 1asva@av;lkjqwea
}}
と出たら、「っち。」と思うことでしょう。

* オーバーライドするときに気をつけること。 [#e7c29c0c]
toStringをオーバーライドするとき、オブジェクトに含まれる情報のうち、大事な情報はすべて返すべきです。~
また必ずjavadocを書きましょう。
+何を返すのか
+どのようなフォーマットで返すのか
を書きましょう。
ただし、「どのようにフォーマットで返すのか」を明記した場合は、フォーマットを2度と変えることができなくなります。~

* toStringで返す情報には必ずアクセス手段を提供する。 [#cb1550e7]
toStringで返す情報には必ずアクセス手段を提供してください。~
そうすることで使いやすいクラスとなります。提供しないとtoStringを解析する必要が出てきてしまい、非常に面倒なクラスになります。

#hr
/[[top]]/[[codetips]]


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS