위를 조합해서 객체를 만든다고 한다면
이렇게 일일이 합치면 너무 많은 객체를 만들어야 할 것이다.
기분을 상속하는 행복한, 웃긴, 부끄러운, 슬픈 객체와
동물을 상속하는 고양이, 강이지, 병아리, 송아지 객체가 소통하는 방법을 인터페이스에서 미리 설정해
기분을 상속하는 새로운 객체가 생겨도 동물을 상속하는 객체에는 영향이 없고 그 반대도 마찬가지도록 동작하게 만드는 패턴이다.
Animal을 상속한 Cat, Dog객체와
Vehicle을 상속한 Car, Boat, Airplane객체가 있을 때
Vehicle은 Animal을 상속한 객체를 가지고
객체의 speak() 메서드를 실행하는 것을 볼 수 있다.