컴포지션(Composition)이 상속(Inheritance)보다 선호되는 경우는?

보통 freeCodeCamp
보기 및 정답
A '~이다(IS-A)'보다 '~을 가지고 있다(HAS-A)' 관계가 적절할 때
B 클래스 수를 줄이고 상속 계층의 깊이를 최소화하고 싶을 때 사용한다
C 실행 성능을 최우선으로 해야 하며 객체 간 메서드 호출 오버헤드를 줄여야 할 때
D 소스 코드의 전체 양을 줄이고 싶을 때 상속을 통해 중복 코드를 제거하면 된다

해설

컴포지션은 객체 안에 다른 객체를 포함(조합)하여 기능을 확장하는 방식입니다. 상속의 강한 결합과 취약한 기반 클래스 문제를 피할 수 있습니다. '자동차는 엔진을 가진다(HAS-A)'처럼 부분-전체 관계에서 컴포지션이 더 적합합니다.

코딩, 제대로 배우고 싶다면?

개념 확인은 퀴즈로, 실력은 실전 프로젝트로.
투더제이 코딩클래스에서 시작하세요.

정규반 살펴보기
START THE LOOP · CHOOSE

시장과 사람의 답을 봤다면,
다음 결과물의 구조를 고릅니다.

한 번의 결과에 기대지 않고 다시 만들 수 있도록, 문제 발견부터 제작·배포·수익화까지 이어지는 전체 흐름을 익혀보세요.

TTJ CLASS에서 다음 구조 고르기
처리 중...