В переменной cat должен храниться объект который будет одновременно являться и Movable, и Cat, и Tomcat - вроде так и есть. Переменная cat хранит ссылку на объект TomCat, объект TomCat унаследован от Cat, а Cat имеет интерфейс Movable ...