본문 바로가기

C++

인터페이스 vs 추상화

반응형

인터페이스와 추상화는 공통적인 부분이 많고 차이점도 많다. 허나 문법적으로 비슷해서 헷갈릴 수 있다

 

공통적인 요소는

- 자신의 클래스에서 구현하지 않고 다른 클래스를 통해 구현하는 공통점이 있다

 

차이점은
문법적으로는 추상화 클래스는 일반 변수, 일반 함수들이 사용가능하고 일부만 추상 함수 사용할 수 있다
인터페이스는 오로지 선언만 가능하다

개념적인 차이로는 인터페이스는 다양성에 초점을 맞춘것이다. 예를 들어 설명하면 고양이, 개, 말, 닭 등은 먹다,씻다,잠자다 등 특성을 가지고 있으며
각자 어떻게 먹는지, 씻는지, 잠자는지 다 다르다. 고로 각자의 상황에 맞게끔 구현하면 된다.

허나, 추상화는 상속에 초점을 맞춘것이다. 부모가 자식에게 해당 내용을 구현하도록 넘겨주면서 보강을 해주는 개념이다.

반응형

'C++' 카테고리의 다른 글

가상 함수  (0) 2019.12.11
C++ 언어의 특징  (0) 2019.11.13
탬플릿  (0) 2019.10.30
참조형 변수  (0) 2019.10.28