이번엔 저번 포스팅의 IS-A 관계에 이어서 HAS-A 관계에 대해 알아보자. IS-A 관계가 상속 관계인 "이다"라는 상태를 표현한 것이라면, HAS-A 관계는 "가지다"라는 뜻이 있다.
HAS-A 관계 객체지향 용어에서 IS-A 관계와 HAS-A 관계 중에서 IS-A 관계는 이전 포스팅에서 설명했던 상속(inheritance)에서 사용된다. 또 다른 관계로는 HAS-A("가지다") 관계가 있는데, HAS-A 관계는 크게 구성(composition) 관계와 집합(aggregation) 관계가 있다.
구성 관계는 한 부분의 강력한 결합관계를 갖는 경우를 의미한다. 그리고 집합 관계는 느슨한 연관관계를 의미하는데, 우선 다음 그림을 살펴보자.
IS-A와 HAS-A 관계 우선 위의 그림을 보면서 구성관계의 예로는 차량(Vehicle)은 엔진(Engine)을 부속품으로 갖는다. 또 다른 예로는 집(House)은 방(Room)을 갖는다.
그리고 집합 관계의 예로는 차량은 운전자가 있어야 하...
#
HAS_A
#
파이썬
#
클래스
#
인스턴스
#
상위클래스
#
상속
#
내장함수
#
객체
#
super
#
Python
#
IS_A
#
하위클래스
원문 링크 : [파이썬 기초] - 클래스 상속(HAS-A 관계)