例では、動物の名前を返すtoStringを持つ抽象的な動物クラスがあり、その子クラスがそれを別に実装していない場合でも、toStringをオーバーライドする必要がありますか?すべてのクラスにtoStringメソッドが必要ですか?
-4
A
答えて
1
子クラスがより詳細な説明を提供しないようにしたい場合を除きます。あなたはJavaにはまったく新しいように聞こえるので、継承の仕組みを理解できないかもしれません(または、そうした場合、この質問は意見に基づいています)。
デフォルトのObject.toString()
は、オブジェクトに関する非常に不自然な情報を返します。多くのクラスがそれを上書きします。しかし、それ以外のList
実装は、それ自身をオーバーライドする必要がないように、それをオーバーライドするAbstractList
のようなクラスがあります。状況はあなたが説明したものとかなり同じです。 toString()
をAbstractList
に一度上書きし、ArrayList
、LinkedList
などを使用してください。
0
のtoString()すべてのクラスObjectクラス内とJavaのメソッドは、Objectクラスを継承しているので、このクラスのtoString()メソッド
public class Test {
}
Test t = new Test();
t.toString(); // it's ok because it inherit the Object class
のtoStringにレコード値を表すときに使用されてい人間は可読な形式で 形式です。
System.out.println(t)
その同じSystem.out.println(t.toString())
toStringは他の人のために表示されます あなたのクラスはあなたのクラスに関する考えを持つことができます。
申し訳ありませんが、私の英語について^^。
関連する問題
- 1. クラスは、必要なすべてのメソッドが
- 2. JSのすべてのオブジェクトにtoString()メソッドがありますか?
- 3. すべてのクラスでJSHintグローバルにエントリが必要ですか?
- 4. NHibernate 3.2 - すべてのプロパティに "set"メソッドが必要ですか?
- 5. FloatクラスtoStringメソッド
- 6. プロトタイプのセルにはすべてクラスが必要ですか?
- 7. ToString(CultureInfo.CurrentCulture)これは必要ですか?
- 8. ToStringメソッドでクラス変数を示すオブジェクト
- 9. メソッドの新しいクラスtoString()
- 10. Delphiで作成するすべてのクラスにはデストラクタが必要ですか?
- 11. 属性ルーティング - すべてのメソッド、クラス、または必要に応じて
- 12. ASP.NET MVCリポジトリパターンでは、すべてのクラスにインターフェイスが必要ですか?
- 13. C#クラスの各インスタンスには異なるメソッドが必要です
- 14. PHPエラー:クラス:: __ toString()は、文字列の値を返す必要があります
- 15. selfパラメータを使用しないすべてのメソッドを静的クラスにする必要がありますか?
- 16. hashCode()、equals()、toString()のすべてを実装してもデータクラスを使用する必要がありますか?
- 17. すべてのsaveOrUpdateメソッドをtry-catchで囲む必要がありますか?
- 18. Caliburn.Microがすべてのメソッドを公開する必要がありますか
- 19. クラスのインスタンスにメソッドをオーバーライドする必要があります
- 20. MapReduceのCustomArrayWritableクラスのtoString()メソッドのNullPointerException
- 21. のtoString LinkedBinaryTree <E>クラスの()メソッド
- 22. javaのfinalizeメソッドが必要ですか?
- 23. java.lang.ObjectのgetClass()メソッドが必要ですか?
- 24. toStringすべてのオブジェクトを取得するgetterメソッド
- 25. 重要な情報にToStringを使用する必要がありますか?
- 26. 同じクラスのtoStringメソッドでメソッドの結果を出力するには?
- 27. ベクトルのすべてのオブジェクトにコピーコンストラクタが必要ですか?
- 28. angular2 RC4のすべてのコンポーネントにROUTER_DIRECTIVEが必要ですか?
- 29. TypeScriptのすべてのインポートに* .d.tsファイルが必要ですか?
- 30. 拡張メソッドでFactoryクラスが必要です
いいえ............. – mdewit
あなたはそれを試してみませんか? –
toStringメソッドは、デフォルトでObjectクラス(https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html#toString())に実装されています。このメソッドは抽象メソッドではないため、オーバーライドする必要はありません。オブジェクトの文字列表現を変更したい場合は、これを行うことができます。 – Dorian