Так и задумано поймать в задаче исключение? /* Исправление ошибок Ӏ Java Core: 4 уровень, 8 лекция */ static abstract class OceanAnimal implements Swimmable { public void swim() { OceanAnimal currentAnimal = (OceanAnimal) getCurrentAnimal(); currentAnimal.displaySwim(); } private void displaySwim() { System.out.println(getCurrentAnimal().getClass().getSimpleName() + " is swimming"); } abstract Swimmable getCurrentAnimal(); } static class Orca extends OceanAnimal { Swimmable getCurrentAnimal() { return this.getCurrentAnimal(); } } static class Whale extends OceanAnimal { Swimmable getCurrentAnimal() { return this.getCurrentAnimal(); } } static class Otter implements Swimmable, Walkable { public void swim() { } public void walk() { } } }