La mise en œuvre de la différence entre l'Agrégation et la Composition en Java
Je suis conscient des différences conceptuelles entre l'Agrégation et la Composition. Quelqu'un peut me dire la mise en œuvre de la différence en Java entre eux avec des exemples?
- Suivez ce lien, vous pouvez obtenir une réponse à vos messages [Différence entre l'Agrégation et la Composition] [1] [1]: stackoverflow.com/a/1468285/1353243
- double possible de Agrégation rapport à la Composition
- Voir aussi c-sharp-code-for-association-aggregation-composition
- Lorsque nous avons toute relation entre des objets, que l'on appelle de l'Association. L'agrégation et la Composition sont spécialisés de l'Association. La Composition est à nouveau se spécialisent forme d'Agrégation. javabench.in/2011/08/difference-between-association.html
Vous devez vous connecter pour publier un commentaire.
Composition
Agrégation
Dans le cas de la composition, le Moteur est complètement encapsulé par la Voiture. Il n'y a aucun moyen pour le monde extérieur pour obtenir une référence vers le Moteur. Le Moteur vit et meurt avec la voiture. L'agrégation, la Voiture s'acquitte de ses fonctions par l'intermédiaire d'un Moteur, mais le Moteur n'est pas toujours une partie interne de la Voiture. Les moteurs peuvent être échangés, ou même complètement enlevé. Non seulement cela, mais le monde extérieur peut encore avoir une référence pour le Moteur, et bricoler avec elle, indépendamment de savoir si il est dans la Voiture.
new Engine(EngineSpecs)
appeler, même si il n'y avait pas de voiture. Le moyen d'atteindre la composition est de créer le Moteur à l'intérieur de la classe, de sorte qu'un objet de moteur est toujours créé avec la référence à un Objet VoitureJe voudrais utiliser une belle UML exemple.
Pris une université a 1 à 20 différents département et de chaque service et de 1 à 5 de professeurs.
Il y a une composition de lien entre l'Université et de ses départements.
Il y a une agrégation de lien entre un ministère et de ses professeurs.
Composition est juste une FORTE agrégation, si l'université est détruit, les ministères doivent être détruits. Mais il ne faut pas tuer les professeurs, même si leurs ministères respectifs disparaître.
En java :
Quelque chose autour de cela.
La différence, c'est que toute la composition est une agrégation et pas vice-versa.
Nous allons définir les termes. L'Agrégation est un metaterm dans le standard UML, et signifie à la FOIS la composition et agrégation partagée, appelée simplement partagé. Trop souvent, il est nommé de manière incorrecte "agrégation". Il est MAUVAIS, pour la composition est une agrégation, trop. Ce que je comprends, tu veux dire "partagé".
Plus loin du standard UML:
Donc, Université de cathedras association est une composition, parce que cathedra n'existe pas hors de l'Université (à mon humble avis)
I. e., toutes les autres associations ne peut être établi que la mise en commun des agrégations, si vous êtes seulement à la suite de certains principes de la vôtre ou celle de quelqu'un d'autre. Aussi regarder ici.
En termes simples :
À la fois de la Composition et de l'Agrégation sont des Associations.
Composition -> Fort A-Une relation
Agrégation -> Faible A-Une relation.
Il y a une bonne explication dans l'url indiquée ci-dessous.
http://www.codeproject.com/Articles/330447/Understanding-Association-Aggregation-and-Composit
Veuillez vérifier!!!
Un simple programme de Composition
Nous devons d'abord parler de ce qui fait la différence entre
Aggregation
etComposition
est d'être sur la même page.alors que
Maintenant, l'agrégation peuvent tout simplement être atteints par la tenue d'une propriété d'une entité à l'autre, comme ci-dessous:
Pour la Composition, il est nécessaire que l'objet dépendant est toujours créé avec l'identité de son objet associé. Vous pouvez utiliser un intérieur de classe pour la même chose.
Les deux types sont bien sûr les associations, et pas vraiment mappé strictement à des éléments de la langue comme ça. La différence est dans le but, le contexte, et la façon dont le système est modélisé.
Comme un exemple pratique, de comparer deux différents types de systèmes avec des entités similaires:
Une voiture système d'enregistrement principalement à garder une trace de voitures, et de leurs propriétaires, etc. Ici nous ne sommes pas intéressés par le moteur comme une entité distincte, mais on peut encore avoir le moteur attributs liés, comme le pouvoir, et le type de carburant. Ici, le Moteur peut être un composite partie de la voiture de l'entité.
Un service de voiture de boutique de système de gestion de la qui gère des pièces de voiture, l'entretien des voitures, et de remplacer les pièces, peut-être les moteurs complets. Ici, nous pouvons même avoir des moteurs en stock et besoin de garder une trace d'eux et d'autres parties séparément et indépendamment des voitures. Ici, le Moteur peut être un agrégées partie de la voiture de l'entité.
Comment la mettre en œuvre dans votre langue est une préoccupation mineure depuis à ce niveau des choses comme la lisibilité est beaucoup plus important.