Код не прикрепляется потому что задача решена((. Не суть.
Коллеги, просьба уточнить один момент.
Правильно ли я поняла, что когда мы создаем объект в зависимости от конструктора нам в этот объект посредстовм метода toString() засовывается (возвращается) определённый текст, после чего ссылку на объект мы поместили в println и на консоли у нас оказался нужный нам текст?
Shellby
19 уровень
Правильна ли моя логика?
Решен
Комментарии (2)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Евгений Java Developer Expert
23 октября 2018, 07:06решение
Ну почти так. По умолчанию, когда мы создаём класс , то он наследует метод toString() от класса Object, который возвращает getClass().getName() + '@' + Integer.toHexString(hashCode()) . Имя класса и Hash код объекта, разделенных собакой. И когда мы используем методы, в которых передаваемый параметр должен быть приведен к типу String (к которым println так же относится), то на выходе получаем то, что описал выше. Но, в своём созданном классе, мы можем переопределить (переписать) метод toString(), который будет выводить то, что нужно нам. Что и сделано в задании. Примерно так. Конструктор в данном случае будет влиять на значение полей. А метод toString() будет выводить текст в зависимости от условий (в данном случае от того какие у полей значения) и для всех котов этот метод выглядит одинаково.
+3
Shellby
23 октября 2018, 14:21
Спасибо, очень познавательно в плане будущих лекций. Первую часть ответа мне нужно будет переосмыслить чуть позже, не хватает теоретических знаний.
0