Осваивание статического блока

  • 8
  • Недоступна
Cоздадим классы Plane и Helicopter, реализующие интерфейс CanFly, после чего в статическом методе reset класса Solution нужно считать с консоли параметр типа String и если он равен helicopter (plane), то статическому объекту CanFly result присвоить объект класса Helicopter (Plane). В статическом блоке инициализировать CanFly result вызвав метод reset.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (116)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
vagu
Уровень 27, Москва, Russian Federation
9 июня, 12:43
Интересная задача Не пойму правда зачем здесь статический блок?
comrade_b
Уровень 26, Амстердам, Нидерланды
25 мая, 18:04
На всякий случай оставлю тут для тех, кто объявляет и инициализирует переменные отдельно от ввода в консоль. Может пригодится кому.
String input = new Scanner(System.in).nextLine();
Айбелив Айкенфлаев
Уровень 28, Москва, Россия
18 мая, 18:53
А можно риторический вопрос: нафиг спрашивать о количестве пассажиров, если тебе это не интересно? (создавать конструктор с параметром int - количество перевозимых пассажиров без соответствующего поля в классе)
AV
Уровень 28, Russian Federation
16 апреля, 05:24
Со Scanner console = new Scanner(System.in); получилось проще и без всяких исключений и закрытий.
Эльдар
Уровень 17, Ростов-на-дону
25 февраля, 10:27
133 попытки........Это просто п.......ц,товарищи.Когда в коде исправил уже все,что только можно,когда перечитал все комментарии,когда,наконец,открыл готовое решение,а оно отличается от твоего только тем,что две строки в try расположены наоборот-одна выше,другая ниже.Обучение начинает превращаться в войну с валидатором....
Damiankain
Уровень 19, Минск, Беларусь
23 января, 12:46
Кто нибудь может пояснить почему String line = reader.readLine(); подчеркивало ошибку. И откуда тут вообще исключения появляются. Не понимаю, что к чему. Написал весь код, но кругом подчеркивало ошибки. Откуда? Почему? Добавил исключения и прошло. Но я не понял почему. Люди, которые вот взяли и решили, как вы пришли к пониманию решения?
Jenkins Работает в ЦФТ
27 января, 15:07
Потому что потоки IO могут выкидывать исключение, а исключение IOException является checked исключением. Поэтому его нужно обработать через catch, либо через throws.
Yuri_S Инженер-конструктор 2к.
24 декабря 2021, 08:20
С try-with-resources валидатор принимает, не обязательно явно вызывать close()
Facepalm
Уровень 31, Москвачкала, Россия
13 декабря 2021, 18:32
Можно исключение пробросить в сигнатуру и в static блоке обернуть метод reset в try-catch static { try { reset(); } catch (IOException e) { e.printStackTrace(); } } Так компактнее
AlexVolt Backend Developer в MaDela
8 декабря 2021, 09:52
Через Scanner валидатор задачу не примет Всего эту задачу решили 28917 учеников.
Sergey
Уровень 27, Калининград, Russian Federation
27 декабря 2021, 14:26
Эммм... примет)
AlexVolt Backend Developer в MaDela
23 января, 20:00
может что то поправили, но у меня не принимало
Василий
Уровень 29, Москва, Россия
27 января, 11:58
Всего эту задачу решили 29448 учеников.
Sergey Potapov
Уровень 26, Подольск, Россия
28 января, 19:52
Всего эту задачу решили 29469 учеников
Андрей
Уровень 20, Москва
15 ноября 2021, 09:37
а в чем смысл статического блока в методе мэин? если бы мы не писали static {reset()} а просто написали бы без statica вызов метода reset, то он же бы тоже запустился же. Я понимаю для чего статиский блок в классе, но в методе он зачем?