Bileşim, diğer nesneleri tutarak (bir "sahip-olmak" ilişkisi) ve onlara yetki vererek davranış inşa eder. Kalıtım, bir sınıfı genişleterek (bir "olmak") davranış kazanır. "Bileşimi tercih et" tavsiyesi vardır, çünkü kalıtım bir temel sınıfa sıkı, kırılgan bir bağlantı yaratırken, bileşim esnek kalır.
Yeniden kullanım için kalıtımın sorunu
<T> <T> {
{ add(x); }
T { remove(size() - ); }
}
