Объясните, пожалуйста) В методе мы пишем "man.wife = woman;" Почему у переменной wife в классе Man не может быть тип String? Спасибо!
Constantine
7 уровень
Почему пишем не "public String wife;" , а "public Woman wife;"?
Решен
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Ksenia Volkova Java Developer в DXC Master
7 января 2020, 20:39решение
У переменной может быть любой тип - String, int... какой укажешь при объявлении, такой и будет.
В этой задаче в классе Man написано, что у мужчины будет жена - женщина. Но если захочешь женить его на строке или числе с плавающей точкой - пожалуйста, перепиши класс как тебе нравится.
+3
Constantine
7 января 2020, 21:48
Правда, логично указать тип Woman для wife. Я из любопытства указал String, и код не скомпилировался. Теперь я совсем запутался. Поможете?
0
Ksenia Volkova Java Developer в DXC Master
7 января 2020, 21:58
Ну так ты написал, что поле wife в классе Man должно быть строкой, а сам пытаешься присвоить ему объект типа Woman.
Если напишешь, например:
man.wife = "woman";
с компиляцией проблемы не будет.
0