-
- 1. 객체지향이란?
- 필요한 데이터를 추상화 시켜 상태와 행위를 가진 객체를 만들고 객체들 간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법
- 장점
- 단점
- 2. 객체지향의 4가지 특징
- 캡슐화
- 데이터와 코드의 형태를 외부에서 알 수 없게 하고, 데이터의 구조와 역할, 기능을 하나의 캡슐 형태로 만드는 방법
- 접근 제어자(private)사용
- set/get의 사용
- 추상화
- 클래스들의 공통적인 특성(변수, 메소드)들을 묶은 것
- 상속
- 부모 클래스에 정의된 변수 및 메서드들을 자식 클래스에서 상속받아 사용하는 것
- 자식 클래스에서 extends 키워드 사용
- 다형성
- 하나의 클래스 내부에 같은 이름으로 여러개 정의 하거나 상위 클래스의 메서드 들을 하위클래스에서 재정의 하여 사용할 수 있는
- 오버로딩
- 하나의 클래스 안에서 같은 이름의 메서드를 여러개 정의 하는 것(시그니처가 다름)
- 오버라이딩
- 부모 클래스로부터 상속받은 메서드를 재정의 한 것
- 3. 객체지향의 5가지 원칙(SOLID)
- 단일 책임 원칙(SRP)
- 개방 폐쇄 원칙(OCP)
- 리스코프 치환 원칙(LSP)
- 인터페이스 분리 원칙(ISP)
- 의존관계 역전 원칙(DIP)