객체의 클래스는 객체가 어떻게 구현되어 있느냐를 정의. 즉 클래스는 객체의 내부 상태와 객체 연산에 대한 구현 방법을 정의
객체의 타입은 객체의 인터페이스. 객체가 응답할 수 있는 요청의 집합을 정의. 하나의 객체가 여러 타입을 갖을 수 있고 여러개의 클래스가 동일한 타입을 가질 수 있다.
예를 들어
제네시스(자동차) 클래스가 있다. 이 클래스에는 달린다. 문이 열린다 등 여러가지가 구현되어 있을 것이다. 제네시스 객체는 차라는 타입을 갖을 수 있다 또한 현대라는 타입도 가질 수 있다.