Kompozicija gradi ponašanje držanjem drugih objekata (odnos "has-a") i delegiranjem na njih. Nasljeđivanje stječe ponašanje proširenjem klase ("is-a"). Savjet "favorizirati kompoziciju" postoji jer nasljeđivanje kreira tesnu, krhku spregu s baznom klasom, dok kompozicija ostaje fleksibilna.
Problem s nasljeđivanjem za ponovnu upotrebu
<T> <T> {
{ add(x); }
T { remove(size() - ); }
}
