Ha egy A objektum tartalmaz egy hivatkozást egy másik B objektumra, vagy mondhatjuk, hogy az A objektumnak HAS-A kapcsolata van a B objektummal, akkor ezt nevezzük aggregációnak.
Az aggregáció segít a kód újrafelhasználásában. A B objektumnak lehetnek segédmódszerei, amelyeket több objektum is felhasználhat. Amelyik osztály rendelkezik a B objektummal, az használhatja annak módszereit.
Példa
public class Vehicle{}public class Speed{}public class Van extends Vehicle { private Speed sp;}
Ez azt mutatja, hogy a Van HAS-A sebességű osztály. Azzal, hogy külön osztályunk van a Speednek, nem kell a Speedhez tartozó teljes kódot a Van osztályon belül elhelyeznünk, ami lehetővé teszi a Speed osztály több alkalmazásban történő újrafelhasználását.
A tárgyközpontúságban a felhasználóknak nem kell azzal foglalkozniuk, hogy melyik objektum végzi a valódi munkát. Ennek elérése érdekében a Van osztály elrejti az implementáció részleteit a Van osztály felhasználói elől. Tehát alapvetően az történik, hogy a felhasználók megkérnék a Van osztályt, hogy végezzen el egy bizonyos műveletet, és a Van osztály vagy maga végzi el a munkát, vagy egy másik osztályt kér fel a művelet elvégzésére.Ezt a koncepciót, amely egy objektumot tartalmaz a művelet elvégzésére, Aggregációnak nevezzük.
Közlemények