객체 지향 특징
- 추상화
- 캡슐화
- 상속
- 다형성 (Polymorphism : 객체 지향의 핵심!!)
객체 지향 프로그래밍
- 객체 지향 프로그래밍은 컴퓨터 프로그램을 명렁어의 목록으로 보는 시각에서 벗어나 여러개의 독립된 단위, 즉 '객체들의 **모임'**으로 파악하고자 하는 것이다. 각각의 객체는 '**메시지'**를 주고받고, 데이터를 처리할 수 있다. (협력)
- 객체 지향 프로그래밍은 프로그램을 '**유연'**하고 '**변경'**이 용이하게 만들기 때문에 대규모 소프트웨어 개발에 많이 사용된다.
유연하고 변경이 용이하다?
- 레고 블럭을 조립하듯이...
- 키보드, 마우스를 갈아 끼우듯이...
- 컴퓨터 부품을 갈아 끼우듯이...
- 컴포넌트를 쉽고 유연하게 변경하면서 개발할 수 있는 방법
<aside>
💡 이게 바로 객체 지향의 핵심인 다형성입니다.
</aside>