Как правильно переопределить toString () в Java?
Звучит немного глупо, но мне нужна помощь на моемtoString()
метод и это очень раздражает.
Я пытался искать в Интернете, потому чтоtoString
это тот, где он облажался и "не нашел конструктор Kid # 2" хотя он есть, и я бы даже сделал что-то еще, и это не сработало.
Хорошо, это было много, вот мой код:
import java.util.*;
class Kid {
String name;
double height;
GregorianCalendar bDay;
public Kid () {
this.name = "HEAD";
this.height = 1;
this.bDay = new GregorianCalendar(1111,1,1);
}
public Kid (String n, double h, String date) {
// method that toString() can't find somehow
StringTokenizer st = new StringTokenizer(date, "/", true);
n = this.name;
h = this.height;
}
public String toString() {
return Kid(this.name, this.height, this.bDay);
}
} //end class
Итак, мой toString выше (я знаю, мой третий параметр выключен, должен быть String) выключен. Если я жестко закодирую значение для третьей вещи, он выходит из строя и говорит, что не может найти это (см. Выше). Так как я могу получить дату и разбить ее?
Класс, вызывающий это ниже
class Driver {
public static void main (String[] args) {
Kid kid1 = new Kid("Lexie", 2.6, "11/5/2009");
System.out.println(kid1.toString());
} //end main method
} //end class
Я пытался исследовать несколько конструкторов, и это действительно не помогло.
Я пытался исследоватьtoString()
методы, и попытался с помощью предыдущегоtoString()
методы логики, которые я создал предыдущие, но это совершенно новый, поэтому он никогда не работал.
Помогите?