Задачу я решил, но не понимаю, почему валидатор ругался, когда я убрал у класса NormalCat конструктор без параметров. Кто-нибудь может мне объяснить, зачем классу конструктор без параметров, если он не используется в коде программы? Я пробовал компилировать и запускать БЕЗ такого конструктора и все, как и ожидалось, работает...