Heim  >  Artikel  >  Java  >  Was ist Aggregation in Java?

Was ist Aggregation in Java?

青灯夜游
青灯夜游Original
2018-12-15 11:45:367452Durchsuche

Aggregation ist in Java eine besondere Form der Assoziation. Es handelt sich um eine HAS-A-Beziehung und eine unidirektionale Assoziation. Wenn eine Klasse über Entitätsreferenzen verfügt, spricht man von einer Aggregation.

Was ist Aggregation in Java?

Zum Beispiel: Es gibt zwei Klassen Studentclass und Addressclass, die Studenten bzw. Adressen darstellen. Die Studentclass-Klasse enthält viele Informationen wie studentId, studentName usw. sowie eine Addressclass-Klasse. Die Klasse Addressclass verfügt über eigene Informationen wie Land, Provinzhauptstadt, Stadt usw. Wie unten gezeigt:

class Address
{
  String country;
  String province;
  String city;
  .....
}
class StudentClass
{
   int studentId;
   String studentName;
   //创建与Addressclass类的HAS-A关系
   Address studentAddr; 
   StudentClass(int id, String name, Address addr){
       ......
   }
   
}

In diesem Fall hat die Klasse Studentclass einen Entitätsverweis auf die Klasse Addressclass und

Jeder Schüler hat eine bestimmte Adresse, sodass die Beziehung zwischen Schülern und Adressen A ist Has-A-Beziehung, das heißt: Student Has-A-Adresse

Warum Aggregation verwenden?

Weil es die Wiederverwendbarkeit des Codes gewährleisten kann.

Zum Beispiel werden basierend auf den beiden Klassen „Student“ und „Adresse“ im obigen Beispiel zwei weitere Klassen „College“ und „Mitarbeiter“ verwendet, die Hochschulen und Mitarbeiter darstellen.

Um Adressen für Studenten, Hochschuladressen und Mitarbeiter zu haben, müssen wir jetzt nicht immer wieder denselben Code verwenden, sondern müssen bei der Definition jeder Klasse nur auf die Adressklasse verweisen.

Daher können wir die Wiederverwendbarkeit des Codes durch die Verwendung von Aggregationsbeziehungen verbessern.

Aggregationsbeispiel

class Address {
String country,province,city;

public Address(String country, String province, String city) {
   this.country = country;
    this.province = province;
    this.city = city;
	
}

}

public class StudentClass{
int id;
String name;
Address address;

public StudentClass(int id, String name,Address address) {
	this.id = id;
	this.name = name;
	this.address=address;
}

void display(){
System.out.println("="+id+",name="+name);
System.out.println("地址是:  "+address.country+","+address.province+","+address.city+"\n");
}

public static void main(String[] args) {
Address address1=new Address("China","Hubei","Wuhan");
Address address2=new Address("China","Hunan","Changsha");

StudentClass Student1=new StudentClass(150,"小明",address1);
StudentClassStudent2=new StudentClass(151,"小华",address2);
	
Student1.display();
Student2.display();
	
}
}

Rendering:

Was ist Aggregation in Java?

Zusammenfassung: Das ist alles Ich hoffe, dass der Inhalt dieses Artikels für das Studium aller hilfreich sein wird.

Das obige ist der detaillierte Inhalt vonWas ist Aggregation 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