Почему в этом случае необходимо переопределить toString?
Олег
26 уровень
Почему данные выводятся только с переопределенным toString
Обсуждается
Комментарии (1)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Marvell QA Automation Engineer
5 сентября 2019, 15:05
потому, что по для вывода вызывается метод toString() из class Object от которого наследуется в данном примере class Cat, поэтому, что бы toString() возвращал нам то, что мы бы хотели, в данном примере - имя кота, его обязательно нужно переопределить
По сути для любого класа, если хотим передавать его напрямую в print нужно описать в переопределенном toString, что конкретно ожидаем на выходе
метод toString из class Object
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
0