Объясните, пожалуйста, почему INDEX увеличивается, даже в случае, если в строке
System.out.println(new Hobbie().toString()); убрать вызов метода toString()?
Задачу решил, но этот вопрос не дает покоя.
Константин
21 уровень
Почему метод toString() вызывается даже неявно?
Решен
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Стас Пасинков Software Developer в Zipy Master
14 февраля 2018, 03:38решение
метод toString() вызывается неявно для любого объекта, который вы выводите на экран.
так что убрав явный вызов метода - вы, по сути, ничего не измените.
но если вам надо получить строковое представление объекта по какой-то причине (например, чтобы сохранить его в какую-то строковую переменную) - то тут вам пригодится явный вызов этого метода
+3
--------Master
13 февраля 2018, 22:25полезный
Сам метод объявлен как public void println(String x), поэтому и происходит преобразование в строку
+1
Константин
13 февраля 2018, 22:51
Не понял всё-равно (
0
Сергеев ВикторMaster
13 февраля 2018, 22:58
пробегитесь по цепочке вызовов начиная с println и увидите как это работает.
Чтобы зайти в метод Ctrl+ЛКМ на методе
+1