Цитата из TAPL (глава 18.1):
Подтипы. Тип объекта — его интерфейс (interface), — это просто множество имен и типов его операций. Внутреннее представление объекта не фигурирует в его типе, поскольку оно не влияет на набор действий, которые могут быть проделаны над объектом.
Почему считается, что тип объекта — его интерфейс? Ведь возможна ситуация, когда два класса реализуют один и тот же интерфейс, но эти реализации обладают совершенно разным поведением по смыслу.