回答編集履歴
1
独自定義のデメリット
answer
CHANGED
@@ -4,4 +4,8 @@
|
|
4
4
|
オブジェクトを文字列として出力するにあたり、このオブジェクトはこのメソッドで、あのオブジェクトはあのメソッドで、あれ、それはなんてメソッドだっけ?
|
5
5
|
|
6
6
|
ということになり、非常に使い勝手が悪いです。
|
7
|
-
すべての参照型が持っているtoStringを書き換えたほうが、操作を統一できて便利なのです。
|
7
|
+
すべての参照型が持っているtoStringを書き換えたほうが、操作を統一できて便利なのです。
|
8
|
+
|
9
|
+
また、独自の文字列化メソッドを実装した場合のデメリットとして、**定義したクラスの親クラス型では使えない**ことも挙げられます。
|
10
|
+
例のDogクラスの場合、Dog型ならstrメソッドが使えますが、Object型の変数に入った場合に使えなくなります。
|
11
|
+
ObjectのメソッドtoStringならそんなことはなく、いつでも使うことができます。
|