객체 지향 프로그래밍의 특징
객체 지향 프로그래밍은 객체 중심의 프로그래밍으로 상속, 캡슐화, 다형성, 추상화라는 특징을 가진다.
상속이란 기존의 클래스를 기반으로 새로운 클래스를 정의하는 것
캡슐화란 클래스안에 변수와 메소드를 묶어 정보를 은닉하여 객체 내부에 접근하지 못하도록 하는 것
다형성이란 하나의 클래스나 객체가 다양한 형태로 기능하는 것
추상화란 핵심적인 기능만 노출하고 세부적인 사항들은 노출하지 않는 것
오버로딩과 오버라이딩
오버로딩은 동일한 이름의 메소드들이 각각 다른 타입이나 다른 갯수의 인자를 가지고 정의된 것을 말한다.오버라이딩은 부모 클래스에 있는 동일한 이름의 메소드를 재정의하는 것을 말한다.
다중 상속
한 클래스가 여러 클래스를 상속 받는 것이다. 여러 부모 클래스를 가질 경우 중복되는 코드를 줄여 가독성을 높이고 재사용성을 높일 수 있다. 하지만 클래스간 결합도가 높아져 유지보수가 어려울 수 있다.
OOP의 5대 원칙 : SOLID
단일 책임 원칙 : 한 클래스에서 하나의 책임만 가진다.개방 폐쇄 원친 : 확장에는 열려있고, 변경에는 닫혀있어야한다.리스코프 치환 원칙 : 상위타입을 상속하여 재정의했을 때 프로그램이 깨지면 안된다.인터페이스 분리 원칙 : 작고 구체적인 인터페이스로 분리해야한다.의존관계 역전 원칙 : 추상적인것은 자신보다 구체적인 것에 의존하면 안된다.
'[ STUDY ] > CS' 카테고리의 다른 글
자바 (4) | 2024.12.19 |
---|---|
[ 알고리즘 ] 최소 신장 트리, 최단 거리 알고리즘 (0) | 2024.11.17 |
[ 알고리즘 ] 정렬 알고리즘 (0) | 2024.11.17 |
[ 자료구조 ] 선형 자료구조 & 비선형 자료구조 (1) | 2024.11.17 |
[ 데이터베이스 ] 조인 (1) | 2024.11.16 |