Привет,
Никак не могу одолеть метод doWork()...
Думаю проблема в проверке через instanceof, но никак не могу понять в чем проблема. В предложенном правильном решении это видимо работает.
Еще пробовал вместо instanceof через person.getClass().getName().equals("User"), но тоже не работает.
Несмотря на одобрение валидатором, doWork() работает не верно, так как:
при вводе user выводит:
I usually just live.
I usually do nothing.
I usually write code.
It's a wonderful life!
при вводе loser:
I usually do nothing.
I usually write code.
It's a wonderful life!
при вводе proger:
It's a wonderful life!
package com.javarush.task.task14.task1411;
public interface Person {
class User implements Person {
void live() {
System.out.println("I usually just live.");
}
}
class Loser implements Person {
void doNothing() {
System.out.println("I usually do nothing.");
}
}
class Coder implements Person {
void writeCode() {
System.out.println("I usually write code.");
}
}
class Proger implements Person {
void enjoy() {
System.out.println("It's a wonderful life!");
}
}
}