Rozdíl Mezi Agregací A Složením V Javě

Obsah:

Rozdíl Mezi Agregací A Složením V Javě
Rozdíl Mezi Agregací A Složením V Javě

Video: Rozdíl Mezi Agregací A Složením V Javě

Video: Rozdíl Mezi Agregací A Složením V Javě
Video: Asociace (HAS-A) Agregace a složení v Javě [NEJČASTĚJI ZPŮSOBENÉ OTÁZKY NA ROZHOVOR] 2024, Listopad
Anonim

Klíčový rozdíl - agregace vs složení v Javě

Agregace je asociace mezi dvěma objekty, která popisuje vztah „má-a“. Složení je konkrétnější typ agregace, který implikuje vlastnictví. Klíčovým rozdílem mezi agregací a složením v Javě je, že pokud obsažený objekt může existovat bez existence vlastňujícího objektu, jedná se o agregaci a pokud obsažený objekt nemůže existovat bez existence vlastňujícího objektu, jedná se o kompozici.

Objektově orientované programování (OOP) je hlavním paradigmatem ve vývoji softwaru. Používá se k modelování softwaru pomocí objektů. Objekty jsou vytvářeny pomocí tříd. Třída se skládá z vlastností a metod. V softwaru je více objektů. Každý objekt vzájemně spolupracuje prostřednictvím předávání zpráv. Vztah mezi dvěma objekty je znám jako asociace. Agregace i složení jsou dva typy asociací. Vztah „has-a“popisuje, že jeden objekt může použít jiný objekt. Agregaci a složení lze implementovat v jazycích podporujících OOP. Pokud obsažený objekt může existovat bez existence vlastňujícího objektu, pak je asociace mezi těmito dvěma objekty agregací. Pokud obsažený objekt nemůže existovat bez existence vlastňujícího objektu,potom je asociace mezi těmito dvěma objekty kompozice.

OBSAH

1. Přehled a klíčový rozdíl

2. Co je agregace v Javě

3. Co je kompozice v Javě

4. Podobnosti mezi agregací a kompozicí v Javě

5. Porovnání vedle sebe - agregace vs složení v Javě v tabulkové formě

6. Shrnutí

Co je agregace v Javě?

Agregace je typ sdružení. Pokud má třída odkaz na entitu, je známá jako agregace. Agregace představuje vztah typu has-a. Objekt Student může mít vlastnosti jako student_id, jméno, adresa. Tento objekt může mít také jiný objekt zvaný adresa s vlastními informacemi, jako je město, stát, země. V této situaci má Student referenční adresu entity. Je to vztah „má“.

Rozdíl mezi agregací a složením v Javě
Rozdíl mezi agregací a složením v Javě

Obrázek 01: Marks Class

Rozdíl mezi agregací a složením v Javě
Rozdíl mezi agregací a složením v Javě

Obrázek 02: Hlavní program pro popis agregace

Podle výše uvedeného programu se třída Marks skládá ze tří vlastností, kterými jsou matematické, anglické a vědecké známky. Student má předmět známek. Má své vlastní vlastnosti, které jsou známkami matematiky, angličtiny a přírodních věd. V hlavní metodě je vytvořen objekt značek a jsou přiřazeny hodnoty značek. Objekt studenta, který je s1, může použít objekt značek, který je m1. Student a Marks proto mají vztah „has-a“. Objekt Marks může existovat i bez Studentského objektu. Jedná se tedy o agregaci.

Co je to složení v Javě?

Složení je typ sdružení. Jedná se o specifickou formu agregace, která implikuje vlastnictví. Předpokládejme, že existují dvě třídy nazývané třída A a B. Pokud objekt třídy B nemůže existovat, pokud je objekt třídy A zničen, pak jde o kompozici. Kniha se skládá z mnoha stránek. Pokud je kniha zničena, zničí se i stránky. Objekty stránky nemohou existovat bez objektu knihy. Viz níže uvedený program.

Rozdíl mezi agregací a složením v Java Figure 03
Rozdíl mezi agregací a složením v Java Figure 03

Obrázek 03: Třída třídy

Rozdíl mezi agregací a složením v Java Figure 04
Rozdíl mezi agregací a složením v Java Figure 04

Obrázek 04: Školní třída

Klíčový rozdíl mezi agregací a složením v Javě
Klíčový rozdíl mezi agregací a složením v Javě

Obrázek 05: Hlavní program pro popis složení

Podle výše uvedeného programu má Učebna dvě vlastnosti, které jsou name a numOfStudents. Škola je sbírka předmětů Učebny. V hlavní metodě jsou vytvořeny dva objekty Učebny. Ty jsou přidány do „učeben“. Tyto „učebny“jsou předávány školnímu objektu. Nakonec se iterací v kolekci vytiskne název třídy a počet studentů. Pokud je školní objekt zničen, zničí se i předměty třídy. Toto je příklad složení. Obsahuje také vztah „má-a“a také implikuje vlastnictví.

Jaký je vztah mezi agregací a složením v Javě?

Agregace a složení jsou dva typy sdružení a složení je specializovaný typ agregace. Složení je podmnožinou agregace

Jaký je rozdíl mezi agregací a složením v Javě?

Rozdílný článek uprostřed před tabulkou

Agregace vs složení v Javě

Agregace je asociace mezi dvěma objekty, která popisuje vztah „má“. Složení je konkrétnější typ agregace, který implikuje vlastnictví.
Používání
Agregace se používá, když jeden objekt používá jiný objekt. Složení se používá, když jeden objekt vlastní jiný objekt.
Působení na objekty
V agregaci zničení vlastňujícího objektu neovlivní obsahující objekt. Ve složení bude mít zničení vlastňujícího objektu vliv na obsahující objekt.

Shrnutí - Agregace vs složení v Javě

Agregace a složení jsou dva koncepty v OOP. Vztah „has-a“popisuje, že jeden objekt může použít jiný objekt. Agregace je asociace mezi dvěma objekty, která popisuje vztah „má-a“. Složení je konkrétnější typ agregace, který implikuje vlastnictví. Rozdíl mezi agregací a složením v Javě spočívá v tom, že pokud obsažený objekt může existovat bez existence vlastňujícího objektu, jedná se o agregaci a pokud obsažený objekt nemůže existovat bez existence vlastňujícího objektu, jedná se o kompozici.

Doporučená: