Dépendance - Un changement dans une classe affecte le changement dans sa classe dépendante. Exemple - Le cercle dépend de la forme (une interface). Si vous changez de forme, cela affecte également Circle. Ainsi, Circle a une dépendance sur Shape.
Association - signifie qu'il existe une certaine relation entre 2 objets
(un-un, un-plusieurs, plusieurs-plusieurs)
L'association est de 2 types-
- Composition
Agrégation
1) Composition - Association ou relation plus forte entre 2 objets. Vous créez un objet d'une classe B dans une autre classe A
public class A {
B b;
public void setB(){
this.b= new B();
}
}
Si nous supprimons la classe A, B n'existera pas (l'objet B est créé à l'intérieur de A uniquement).
Un autre exemple -Body & Liver .Liver ne peut pas exister en dehors du corps.
2) Agrégation - type d' association plus faible entre 2 objets.
public class A {
B b;
public void setB(B b_ref){
this.b= b_ref;
/* object B is passed as an argument of a method */
}
}
Même si vous supprimez la classe A, B existera à l'extérieur (B est créé à l'extérieur et passé à la classe A)
Un autre exemple de ceci - Man & Car. L'homme a une voiture, mais l'homme et la voiture existent indépendamment.