Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

To Dare Is To Do!

인터페이스가 가지는 객체 지향의 특징 본문

Java

인터페이스가 가지는 객체 지향의 특징

Nick_Choi 2023. 10. 21. 08:49

지난번 객체 지향 프로그래밍의 특징을 살펴보다 인터페이스가 간단한 예시로서 사용된 경우가 있었다.

오늘은 인터페이스에 대하여 살펴보며 지난번 공부했던 객체 지향에 대해서도 간단히 상기시켜 보려고 한다.

 

객체 지향 프로그래밍은 프로그램을 유연하고 변경 용이하게 만들어 유지보수가 쉽고 코드를 최소화할 수 있다는 장점이 있다. 

이러한 프로그래밍의 대표적인 특징들 속에서 인터페이스는 많은 비중을 차지하고 있는데 그중에서 나는 추상화와 다형성에서 인터페이스의 가치가 드러난다고 생각한다.

 

- 추상화를 가진 인터페이스

추상화란 객체의 공통된 특징을 정의하여 불필요한 세부사항은 제거하고 필요한 정보의 표현을 목적으로 한다.

객체 지향 측면에서 인터페이스는 어떠한 객체의 핵심적인 역할을 정의하는 것으로 구체적인 구현 사항은 제외하고 필요한 동작에 대한 명세를 정의한다는 점에서 추상화가 가지는 목표를 만족시킨다고 생각한다.

 

- 다형성을 가진 인터페이스

다형성이란 어떤 객체의 특징이 해당 맥락에 맞게 역할을 수행할 수 있도록 다양한 형태로서 표현되는 것을 의미하며 대표적인 예로서 오버라이딩과 오버로딩이 있다.

인터페이스는 구현하는 해당 클래스가 맥락에 맞게 수행할 역할을 다양한 형태로 재정의하여 메서드 등을 구현할 수 있도록 핵심 역할만을 정의하여 객체 지향 프로그래밍의 장점인 유연하고 변경 용이한 설계를 위한 기반을 완성한다고 생각한다.