Задача не проходила валидация по части пунктов до тех пор, пока я объявлял переменные с нулевыми значениями:
public class Cat {
String name;
int weight=0;
int age=0;
String color="colorless";
String address;
Как только изменил на:
public class Cat {
String name;
int weight=1;
int age=1;
String color="colorless";
String address;
все заработало. Почему так могло получиться?
Александр
10 уровень
Почему при объявлении переменных класса нельзя делать их значения равными "0"?
Архивный
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Alex Ter
27 апреля 2020, 12:29
/* Комментарий удален */
0
Александр
27 апреля 2020, 12:33
Да, не сделал. Зачем в инициализаторе заново присваивать значения переменным которые не меняются по сути? Еще раз вопрос в чем:
в коде выше я заменил нули на единицы и все заработало. Почему нули нельзя?
0
hidden #2291199
13 мая 2020, 13:06
Наверное ответ кроется в ТЗ.
Задача инициализатора - сделать объект валидным.
Например, если вес неизвестен, то нужно указать какой-нибудь средний вес.
Кот не может ничего не весить.
То же касается возраста и цвета.
+1