Selbst wenn ich eine neue Klasse erstelle und toString versuche, erhalte ich eine Zeichenfolge wie "PhoneNumber @ 163b91", die ich nicht gerne erhalte. Der allgemeine Vertrag für toString ist "ein prägnanter, aber informativer Ausdruck, der für die Menschen leicht zu lesen ist".
/**
*Gibt eine Zeichenfolgendarstellung dieser Telefonnummer zurück
*Die Zeichenfolge besteht aus 14 Zeichen und hat das Format"(XXX) YYY-ZZZZ"ist.
*XXX ist die Vorwahl, JJJ-ZZZZ ist der Stadtcode.
*(Jeder Großbuchstabe steht für eine einstellige Zahl.)
*
*Jeder der drei Teile dieser Telefonnummer kann dieses Feld ausfüllen
*Wenn nur wenige Ziffern vorhanden sind, wird das Feld mit Nullen aufgefüllt.
*Zum Beispiel die letzten 4 Ziffern der Nummer"123"Wenn ja, der letzte Teil der Zeichenfolgendarstellung
*4 Zeichen"0123"Es wird sein.
*
*Beachten Sie, dass nach den Vorwahlklammern ein Leerzeichen steht, um es von der Stadtvorwahl zu trennen.
*/
@Override public String toString(){
return String.format("(%03d) %03d-%04d",
areaCode, prefix, lineNumber);
}
Dies gibt "{Jenny = (707) 867-5309}" zurück! Durch genaues Überschreiben von toString sparen Sie Zeit beim Parsen des Programms einer anderen Person, die diese Klasse verwendet.
[Read Effective Java] Kapitel 3 Punkt 12 "Berücksichtigung der Implementierung von Comparable" https://qiita.com/Natsukii/items/1942f7f41ac39b914591
Recommended Posts