내가 훗날 차를 살 여력이 되어서 자동차를 구매할 예정이라고 가정해보자.
내가 미리 찜해둔 자동차는 "현대 소나타", "기아 K5", "BMW 320d" 이다.
이 때 위 세 종류들은 모두 같이 자동차라는 상위 개념을 포함한다.
이 때 상위 개념인 자동차를 클래스라고 표현하고 방금과 같이 상위 개념을 만들어 나가는 행위를 "추상화"라고 한다.
예컨대, 자동차의 상위 개념은 이동수단이라는 클래스가 될 것이다.
추상화를 할 때 가장 중요한 점은 어떠한 존재가 가지고 있는 여러가지 속성 중 특정한 속성을 가려내야 한다는 것이다.
나는 자동차를 사기로 결정했고, "현대 소나타", "기아 K5", "BMW 320d" 세 종류의 차량을 미리 찜해놨다고 했다.
여기서 "현대 소나타", "기아 K5", "BMW 320d" 들을 객체라고 부른다.
그렇다면 우리는 지금까지의 과정을 다음의 문장으로 축약할 수 있을 것이다.
클래스는 일종의 설계도이고 이것을 사용하여 우리가 사용할 수 있는 실제 물건으로 만들어내는 행위가 반드시 필요하다. 객체는 클래스를 사용하여 생성한 실제 물건이다.