OOP (Object-Oriented Programming) 특징
1. 캡슐화
- 연관 데이터를 하나로 묶음
- 정보를 은닉하고 외부로부터 안전함
2. 상속
- 기존의 클래스를 확장하여 새로운 의미의 클래스 생성
- 부모-자식 관계로 구분 지을 수 있음
- 포괄하는 의미의 부모 클래스를 상속 받아 자식클래스에 사용
- 비슷하지만 다른 의미의 메서드를 재사용하여 재정의 할 수 있음
- 코드의 중복을 줄임
3. 다형성
- 하나의 인터페이스나 기능을 다양한 방식으로 구현
- 오버로딩, 오버라이딩
- 확장 가능한 코드 작성, 코드의 재사용성을 높임
4. 추상화
- 느슨한 코드 구조
- 개념 단순화, 필요한 기능 집중 구현
- 세부 구현 내용을 감추고 핵심 개념에 집중함, 코드의 이해와 유지보수를 용이하게 함
5. 객체
- 객체는 클래스로부터 생성된 실체로, 데이터와 해당 데이터를 조작하는 메서드를 가지고 있습니다.
- 객체는 상태(데이터)와 행동(메서드)을 가지며, 실제 세계의 개체나 개념을 모델링합니다.
- 객체들 간의 상호작용을 통해 프로그램이 동작하고, 모듈화와 재사용성을 높입니다.