Это баг проверки или мое решение не правильное и лучше писать код, как предлогают ?
public static void haveFun(Person person) {
if(person instanceof Player){
new Player().play();
}
if(person instanceof Dancer){
new Dancer().dance();
}
}