User, Loser, Coder and Proger

  • 8
  • Недоступна
1. Ввести [в цикле] с клавиатуры несколько строк (ключей). Строки(ключи) могут быть такими: "user", "loser", "coder", "proger". Ввод окончен, когда строка не совпадает ни с одной из выше указанных. 2. Для каждой введенной строки нужно: 2.1. Создать соответствующий объект [см. Person.java], например
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (124)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Dzmitry Huletski15 уровень, Минск
позавчера, 07:59
Решение прошло валидацию, но ей-богу, не пойму, зачем нужно такое сложное обращение к классу User? if (person instanceof Person.User) ((Person.User) person).live(); Почему компилятор не видит этого публичного класса просто так? if (person instanceof User) person.live();
DenisKa15 уровень, Екатеринбург
понедельник, 17:25
а ну ка признавайтесь, хоть кто-то вспомнил что надо сделать в конце reader.close(); ?
Андрей14 уровень, Новосибирск
14 марта, 06:22
Рефакторинг: замена условного оператора полиморфизмом Зачем нас приучают писать плохой код?
Андрей14 уровень, Новосибирск
14 марта, 06:18
Коллеги! А насколько в java принято/оправдано использование меток для break'ов?
loop:
while (reader.ready()) {
    key = reader.readLine();
    switch (key) {
        case ...
        default:
            break loop;
    }
}
zyto16 уровень, Москва
12 марта, 18:36
А я пытался решить через такую конструкцию: person = (Person)Class.forName("User").newInstance(); но ругается что класс User не обнаружен Пробовал так: person = (Person)Class.forName("Person.User").newInstance(); но тоже не работает... Может кто показать рабочий пример как по имени класса в виде строки создать объект этого класса?
Petr15 уровень, Москва
11 марта, 12:27
В цикле вводил строки , проверял строки, создавал объекты и сразу вызывал для нового объекта doWork -- задача работает и прошла проверку и получилось очень просто . Вот только заготовка задания размечена по-моему нет так, будто одного цикла не достаточно...
Oleg Shilyuk18 уровень, Минск
11 марта, 09:38
Почему в IDEA не могу ничего ввести в консоль, пишет read only, куда в таком случае вписывать строки из условия задачи(user, loser, e.t.c.)???
VladSL16 уровень, Уфа
1 марта, 15:22
Вот и моя очередь пришла с валидатором бороться... Кратенько: валидатор выдавал, что у меня метод doWork не вызывает соответствующие запросу методы. Два часа танцевал с бубном. Прочитал все комментарии... Оказалось, всё банально. В самом начале, когда я пошёл по ложному пути, я добавил static к методам классов Юзер, Лузер и т.д. в интерфейсе Person. Убрал статики - валидатор принял. Вывод - НЕ ЛЕЗЬТЕ в интерфейс Person! Всем удачи!
Petr15 уровень, Москва
11 марта, 12:28
Согласен
Евгений18 уровень, Санкт-Петербург
27 февраля, 15:48
Подскажите, пожалуйста, почему валидатор не принимает решение через person.getClass().getSimpleName() ? Либо исправьте проверку, либо укажите, что обязательно, что прям мастхэв решать через isinstanceof
Tanarri18 уровень
27 февраля, 13:38
Вопрос: На протяжении нескольких уровней нам говорилось, что интерфейс это абстракция. Что в нем должны быть описаны только методы без реализации... Так какого лешего тут не то что методы, а целые классы описаны, да еще и с реализацией, да еще и реализующие данный интерфейс??? Я конечно же задачу решил, но что то мне подсказывает, что в Person.java написано как делать ненадо.
Petr15 уровень, Москва
11 марта, 12:31
Если работает - значит так то-же можно, почему мне то-же не совсем понятно.