컴퓨터 프로그램을 독립된 단위, “객체” 들의 모임으로 파악하고자 하는 것.협력(객체는 메시지를 주고받고, 데이터를 처리할 수 있다.)프로그램을 유연하고 변경이 용이하게 만들 수 있다.역할과 구현으로 구분 \- 역할 = 인터페이스 \- 구현 = 인터페이스를 구현한 클래