객체의 포함관계를 나타내는 패턴입니다. 객체들의 관계를 트리 구조로 구성하여 부분-전체 계층을 표현하는 패턴으로, 사용자가 단일 객체와 복합 객체 모두 동일하게 다루도록 한다. https://ko.wikipedia.org/wiki/%EC%BB%B4%ED%8F%AC%EC%A7%80%ED%8A%B8_%ED%8C%A8%ED%84%B4 위의 코드를 구현해 보겠습니다. 간단히 아래와 같이 마우스 우클릭 메뉴라고 상상해보시면 됩니다. Component는 Composite와 Leaf를 동일한 목적으로 사용하기 위해 만든 공통의 조상 클래스 입니다. Leaf 클래스는 는 하위 메뉴가 없는 선택 가능한 메뉴로 operation() 을 수행합니다. Composite 클래스는 add()와 remove()로 하위 메뉴를 추가..