Объект -- сочетает данные и процедуры их обработки. Такие процедуры называют методы или операции. Объект выполняет операцию, когда получает запрос (или сообщение) от клиента.
Самая трудная задача проектирования -- разложить систему на объекты.
Сигнатура = имя операции + передаваемые объекты + возвращаемое значение.
Интерфейс описывает множество сигнатур запросов, которые можно отправить объекту.
Тип -- это имя для обозначения конкретного интерфейса.
Класс определяет внутренние данные объекта и операции, которые объект может выполнять.
Различие между классом и объектом. Класс определяет внутреннее состояние и реализацию операций объекта. Тип относится только к интерфейсу. У объекта может быть много типов.