CS/ETC

추상클래스와 interface 차이 (용도차이)

혀니리리 2023. 9. 27. 16:32
728x90

[JAVA] 추상클래스 VS 인터페이스 왜 사용할까? 차이점, 예제로 확인 :: 마이자몽 (tistory.com)

 

[JAVA] 추상클래스 VS 인터페이스 왜 사용할까? 차이점, 예제로 확인 :: 마이자몽

추상클래스 인터페이스 왜... 사용할까? 우리는 추상클래스와 인터페이스에 대해서 알고 있냐고 누가 물어본다면 알고 있다고 대답을 하고있습니다. 그런데 이론적인 내용 말고 정작 "왜 사용하

myjamong.tistory.com

 

  정의 다중상속 / 사용 용도 사용 시기
추상클래스 (미완성 설계도) - 상속을 통해서 자손클래스에서 완성하도록 유도하는 클래스
- class 앞에 abstract 예약어를 사용하여 상속을 통해 구현해야한다는 것을 알려주고 선언부만 작성하는 추상클래스 선언 가능
다중상속 불가
Is A (~이다)
상속 관계를 쭉 타고 올라갔을때 같은 조상클래스를 상속하는데 기능까지 완벽히 똑같은 기능이 필요한 경우 
인터페이스 (기본 설계도) 추상클래스처럼 다른 클래스 작성하는데 도움을 주는 목적으로 작성 다중상속 가능
Has A(~을 할 수 있다)
상속 관계를 쭉 타고 올라갔을때 다른 조상클래스를 상속하는데 같은 기능이 필요할 경우

가장 큰 차이점: 사용 용도

추상클래스 : 복제품, 틀

인터페이스 :  중복되는 기능

interface에서 다중상속 받는 예제

728x90

'CS > ETC' 카테고리의 다른 글

순수 가상함수, 일반 가상함수  (0) 2023.12.19
FSM(Finite-state machine)  (0) 2023.12.19
OOP(Object-oriented programming)  (0) 2023.12.19
Call by Value Vs Call by Reference  (0) 2023.10.01
C++과 C#의 차이 (+ 속도차이)  (0) 2023.09.27