추상화 클래스랑 인터페이스 공부하면서 내가 이해한 바로는
추상화 클래스는 해당 클래스에 원본 구성 요소를 자식들이 그대로 상속받으면서 원본 요소를 재정의하거나 일부분을 본인들이 만들어서 사용
-> 즉 자식끼리 겹치는 구성요소 부분이 있고 위에 하나밖에 상속 몬받음 (죽음의 다이아몬드인가 뭐시긴가)
인터페이스는
-> 위에 부모가 있긴한데 자식의 구성요소가 개별적으로 제 각각 다름 ? 그리고 이러한 점으로 다중 상속도 가능
맞나요?
[🐣질문] C# 개고수분들 질문좀 추상화 클래스랑 인터페이스
익명(114.202)
2024-06-28 19:09:00
추천 0
댓글 7
다른 게시글
-
[스파키를 구해라] 조금 지났지만... 출시 게임 홍보!
[7][📢홍보] 수박끼얏호(flesh4934) | 24.06.28추천 13 -
Addressable Asset으로 빌드한거 링크 어떻게 하면됨?
[7][🐣질문] 익명(121.136) | 24.06.28추천 0 -
개발하다가 하기 싫어지는 때는 어떻게 이겨내냐
[2][💬] 익명(121.148) | 24.06.28추천 1 -
아니 언리얼 c++입문은 기본이 이득우인데 유료강의 막으면
[4][💬] 익명(61.75) | 24.06.28추천 1 -
언리얼 괜찮은 강의는 이득우부터 시작해서 유료강의인데
[1][💬] 익명(61.75) | 24.06.28추천 0 -
강의 볼드모트화 되는중에 쓰는 진짜 도움되는강의(?)
[3][💬] ㅇ,ㅇ(thlee01) | 24.06.28추천 3 -
7시에 ㄹㅇ 작업시작함
[1][💬] 브리슬(jaemin0812) | 24.06.28추천 0 -
내문제가 아니라는거 가져옴
[3][💬] 익명(118.218) | 24.06.28추천 0 -
강의 언급 볼드모트화는 너무나감
[4][💬] 익명(14.55) | 24.06.28추천 8 -
구글 <= 얘네들은 진짜 좀 쳐 맞아야돼요
[3][💬] 익명(118.218) | 24.06.28추천 1
대충 맞워용 - dc App
인터페이스는 제어 역전에 대해 공부하면 좋은 사용예를 매우 쉽게 알 수 잇음
추상화 클래스는 개념적으로 접근했을 때 자식들이 모두 상속받아야하는 경우에 묶어두는 최소한의 단위이고 인터페이스는 명확한 is-a관계는 아니지만 공통적으로 들고 있고 통신하는걸 인터페이스라고 하는데 좀 많이 언급되는 예가 모든 새들의 조상으로 쓸 bird 클래스에 fly()함수를 넣지 않고 인터페이스로 fly()함수를 제공하는 거임
비둘기, 참새 등등 일반적으로 생각하는 새들은 나는 새들이니까 bird에 fly()가 있어야하지않겠냐 하지만 펭귄, 키위새같이 날지않는 새들도 있으니 fly()를 bird에 넣기는 애매하고 이런 애매한 경우들은 새 말고 다른 생물체들에게도 있을거니까 공통적으로 나는 생물체들에게 IFlayable 인터페이스를 붙여서 fly()함수를 각각 구현하는거
그럼 제 이해가 틀리진 않았죠?
틀리진 않은데 학교 중간고사 문항 수준 정도의 이해라서 아쉬움
그렇게 어렵게 얘기하지말고 제일 간단한 예로는 Interact 를 구현할때라고 생각하면됨. Interact 는 어느 클래스건 상호작용을 해야 하기때문에 기능적으로 모듈화 하기에 좋은거임 각 하위클래스에 Interact 라는 함수로 구현할수있지만. Interact 하지 않는 클래스도 가지고 있어야 되기때문에 IInteract 라는 인터페이스로 빼면 Interact 필요한 클래스만 따로 사용할수있고 코드도 간결해지고 재사용도 높아짐