Подскажите, эту задачу можно решить тремя способами: 1. Порядок расположения instanceof 2. Через getClass().getSimpleName() 3. Создание в родителе поля name и переопределение геттера в потомках. Какой более верный и самое главное почему? Мне кажется, что это третий вариант, т.к. при добавлении новых классов, либо изменении иерархии наследования, будут минимальные изменения в коде.