Heim  >  Artikel  >  Java  >  Was ist der Unterschied zwischen Aggregation und Komposition in Java?

Was ist der Unterschied zwischen Aggregation und Komposition in Java?

青灯夜游
青灯夜游Original
2018-12-15 14:17:278967Durchsuche

Der Unterschied zwischen Aggregation und Kombination besteht darin, dass die Aggregation eine Hat-A-Beziehung darstellt. Die beiden Klassen (oder Entitäten) in der Aggregation können unabhängig voneinander existieren und beeinflussen sich nicht gegenseitig. Die Kombination stellt eine Teilbeziehung dar. Die beiden Entitäten (oder Klassen) in der Kombination sind stark voneinander abhängig und beeinflussen sich gegenseitig.

Was ist der Unterschied zwischen Aggregation und Komposition in Java?

In diesem Artikel werden Assoziation, Aggregation und Kombination in Java vorgestellt, damit Sie den Unterschied zwischen Aggregation und Kombination verstehen. [Empfohlene verwandte Video-Tutorials: Java-Tutorial]

Was ist die Assoziation in Java?

Eine Assoziation ist eine Beziehung zwischen zwei unabhängigen Klassen, die zwei völlig unabhängige Entitäten über ihre Objekte (oder Instanzen) verbinden können. Assoziationen können beliebiger Art sein: Eins-zu-Eins, Eins-zu-Viele, Viele-zu-Eins, Viele-zu-Viele.

Was ist Aggregation in Java?

Aggregation ist eine spezielle Form der Assoziation, die eine Hat-A-Beziehung darstellt; es handelt sich um eine einseitige Beziehung zwischen Klassen (oder Entitäten). Zum Beispiel: Brieftasche und Geld, die Brieftasche enthält Geld, aber das Geld enthält nicht die Brieftasche; dies ist eine natürlich einseitige Beziehung.

In einer Aggregationsbeziehung können zwei Klassen (oder Entitäten) unabhängig voneinander existieren und beeinflussen sich nicht gegenseitig, das heißt: Die Existenz einer Klasse (oder Entität) hat keinen Einfluss auf die anderen Klassen (oder Entitäten). ) aggregiert damit die Existenz oder Abwesenheit der Klasse.

Was ist der Unterschied zwischen Aggregation und Komposition in Java?

Was ist Kombination in Java?

Eine Komposition ist eine eingeschränkte Form der Aggregation, die eine Teilbeziehung zweier Entitäten (oder Klassen) darstellt, die stark voneinander abhängig sind. Genau wie: Der Mensch und das Herz, der Mensch braucht das Herz zum Überleben, und das Herz braucht auch den menschlichen Körper zum Überleben.

Mit anderen Worten, wenn Klassen (Entitäten) voneinander abhängig sind und ihre Lebensdauer gleich ist (wenn eine stirbt, stirbt auch die andere), dann handelt es sich um eine Komposition. Zum Beispiel: Ohne den Menschen hätte das Herz keine Bedeutung.

Der Unterschied zwischen Aggregation und Kombination

Was ist der Unterschied zwischen Aggregation und Komposition in Java?

1. Unterschiede in den Abhängigkeiten

Zwei Klassen (oder Entitäten) in einer Aggregation können unabhängig voneinander existieren und sich nicht gegenseitig beeinflussen Abhängigkeit ist nicht mächtig.

Im Gegenteil, die beiden Entitäten (oder Klassen) in der Zusammensetzung sind stark voneinander abhängig und beeinflussen sich gegenseitig.

2. Unterschiede in den Beziehungstypen

Aggregation stellt eine Hat-eine-Beziehung dar, eine Einweg-Beziehung stellt eine Teil-von-Beziehung dar.

3. Unterschiede in der Assoziationsstärke

Aggregation ist eine schwache Assoziation;

4. Unterschiede in den Lebenszyklen

Die Lebenszyklen der beiden Klassen (oder Entitäten) in der Aggregationsbeziehung sind jedoch nicht synchronisiert Lebenszyklen zweier Klassen (oder Entitäten) werden synchronisiert.

Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen Aggregation und Komposition in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Was ist Aggregation in Java?Nächster Artikel:Was ist Aggregation in Java?