tree —
apache tiles — a good eg of the tree concept
subtree — a subtree and a leaf are treated the same, as 2 “components” — a lifeless abstract jargon.
operations — an operation can be an instance method (polymorphism) of the component, or can be a method accepting an arg of the component’s type.
Now the most important keyword is …
transparency — clients can treat subtree or leaf uniformly. Simply put, they share a supertype (interface or superclass). Transparency is big in OO layer design. Transparency means separation of concern.
Once you wrap your mind around it, you may finally sigh a sigh of relief and realize Composite is a simple and practical device (like factory, template method, State)
See [[head first design patterns]] for a simple eg.