Java

[JAVA] 객체 지향 프로그래밍(OOP)의 특징

씬프 2021. 4. 6. 19:59
반응형

객체 지향 프로그래밍은 프로그래밍에서 필요한 데이터를 추상화시켜서 상태, 행위를 가진 객체를 만들어 서로 연관관계를 맺어 로직을 구성한다.

 

추상화, 캡슐화, 상속, 다형성의 특징을 갖는다.

 

추상화

공통적인 상태나 행위를 하나로 묶는 것.

체적인 것을 상세히 하지 않고, 필요성에 의한 특성만 구성하는 것.

예를 들어, K3, 아반떼, 그랜져 등을 자동차라는 추상적인 객체로 정의하는 것.

 

캡슐화

데이터 구조와 데이터를 다루는 방법을 결합시켜서 묶는 것.

중요한 데이터를 보존, 보호하는 것이다. (은닉성 보장) 외부에서 접근하지 못하도록 한다.

 

상속

자식은 부모의 것을 물려받는다. 중복 코드를 줄이고, 객체의 다형성을 구현할 수 있다.

 

다형성

하나의 변수명, 함수명 등이 상황에 따라 다른 의미로 해석될 수 있는 것.

오버라이딩(재정의) 오버로딩(같은 이름의 함수지만 매개변수의 타입과 개수에 따라 다르게 호출함)

그리고 역할, 구현을 나누는 것.

 

'Java' 카테고리의 다른 글

[Java Spring] 컨테이너와 IoC, DI  (0) 2021.04.08
[Java] 좋은 객체지향 프로그래밍 5원칙 (SOLID)  (0) 2021.04.07
[JAVA] DB와 관련된 (순수 JDBC, JDBC 템플릿, JPA)  (0) 2021.04.06
[JAVA] 접근 제어자  (0) 2021.04.01
Lambda  (0) 2021.03.30