공부하는 스누피

[JAVA] OOP 특징 본문

Languages/Java

[JAVA] OOP 특징

커피맛스누피 2021. 2. 7. 11:50

Encapsulation

Class 안에 데이터와 기능을 담아 정의하고, 필요한 기능만 공개한다. 이때 중요한 데이터는 Access Modifier로 숨길 수 있다. public한 데이터를 최소화시키면 캡슐화가 잘 되어 있다고 할 수 있다.

 

Inheritance

기존에 존재하는 객체의 속성과 기능을 상속받아 새로운 객체를 정의하는 것. 이를 통해 클래스를 재사용할 수 있다.

 

Polymorphism

같은 타입 또는 같은 기능을 호출해서 다양한 효과를 가져오는 것을 의미한다.

대표적으로 overriding과 overloading을 예로 들 수 있는데, overriding은 같은 기능을 재정의 해서 클래스에 따라 다양한 효과를 가져올 수 있게 하였고, overloading은 같은 이름의 메서드에 파라미터에 따라 다른 효과를 사용할 수 있게 한다.

 

 

 

OOP의 3대 특징은 Encapsulation, Inheritance, Polymorphism 세 가지가 있고, Abstraction을 추가해서 말하기도 한다. 

 

Abstraction

현실 세계에 존재하는 객체의 주요 특징을 추출하는 과정이다.

 

Comments