Rumah  >  Artikel  >  Java  >  Komposisi dan Pengagregatan di Jawa

Komposisi dan Pengagregatan di Jawa

王林
王林asal
2024-08-30 15:15:151011semak imbas

Java menyediakan perhubungan yang berbeza antara objek yang boleh dianggap sebagai kehidupan sebenar dan pengaturcaraan. Kadang-kadang sangat sukar untuk difahami, atau kita boleh mengatakan bahawa untuk melaksanakan perhubungan. Jadi java menyediakan perhubungan komposisi dan pengagregatan kepada pengguna. Dalam komposisi, kita boleh membina hubungan yang kita panggil "kepunyaan" hubungan; secara logiknya, kita boleh mengatakan bahawa satu objek lebih besar daripada objek lain. Dalam pengagregatan, kita boleh membina hubungan yang kita panggil hubungan "mempunyai", di mana setiap objek bertindak secara bebas antara satu sama lain. Hubungan pengagregatan kami anggap sebagai persatuan yang lemah dan komposisi kami anggap sebagai persatuan yang kuat.

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

Sintaks Komposisi dan Pengagregatan

Sintaks gubahan seperti berikut:

public class building {
private final Room room;
public building () {
room = new room ();
}
}
class Room { }

Penjelasan:

  • Dalam sintaks di atas, kami mempertimbangkan contoh bangunan, jadi mula-mula, kami mencipta kelas dengan bangunan nama, dan bilik adalah bahagian wajib bangunan seperti yang ditunjukkan dalam sintaks di atas.
  • Ini ialah sintaks perhubungan gubahan, dan di sini kami menunjukkan ia tergolong dalam perhubungan.

Sintaks Pengagregatan seperti berikut:

public class student {
private List students;
public student () {
students = new list_students();
}
}
class student { }

Penjelasan:

  • Dalam sintaks di atas, kami mempertimbangkan contoh pelajar, di mana mula-mula kami mencipta kelas awam dengan nama sebagai pelajar, dan selepas itu, kami mencipta senarai pelajar kerana pelajar boleh menjadi 0 atau lebih seperti yang ditunjukkan dalam sintaks di atas.
  • Di sini kami juga menunjukkan hubungan "mempunyai" antara objek.

Bagaimanakah Komposisi dan Pengagregatan berfungsi dalam Java?

Diberikan di bawah menunjukkan cara komposisi dan pengagregatan berfungsi dalam java:

Komposisi digunakan untuk menentukan "kepunyaan" perhubungan. Ini menunjukkan bahawa salah satu item secara bijak lebih besar daripada item lain, atau kita boleh katakan objek. Sebagai contoh, pertimbangkan bilik sebagai sebahagian daripada bangunan, atau kita boleh katakan bangunan mempunyai bilik. Jadi pada asasnya, tidak kira sama ada kita menyebutnya "kepunyaan" atau "mempunyai-a" hanyalah soal perspektif.

Pada asasnya, gubahan ialah hubungan yang kukuh memandangkan objek yang mengandungi menuntutnya. Dengan cara ini, apabila kita mengalih keluar kitaran hayat objek, ini bermakna apabila kita mengalih keluar nod induk, maka secara automatik ia mengalih keluar nod anak. Sebagai contoh, kita boleh mempertimbangkan apabila kita memusnahkan bilik; maka bangunan itu juga musnah. Ambil perhatian bahawa itu tidak bermakna objek yang mengandungi tidak boleh wujud dengan mana-mana bahagiannya. Sebagai contoh, kita boleh memusnahkan semua pembahagi dalam struktur, seterusnya melenyapkan bilik. Walau apa pun, struktur itu, dalam apa jua keadaan, wujud. Setakat kardinaliti, artikel yang mengandungi boleh mempunyai banyak bahagian yang kita perlukan. Namun begitu, keseluruhan bahagian perlu mempunyai satu petak dengan tepat.

Menggunakan cara pengagregatan berfungsi dalam java seperti berikut:

Kami tahu bahawa komposisi "mempunyai hubungan". Begitu juga, pengagregatan juga mempunyai hubungan "Mempunyai". Perbezaan asas ialah pengagregatan itu termasuk nod atau objek induk. Dalam hubungan ini, setiap objek adalah bebas antara satu sama lain. Sebagai contoh, kita boleh mempertimbangkan kereta dan rodanya yang berbeza, roda yang sama boleh kita pasang ke dalam kereta lain kemudian ia berfungsi tanpa sebarang masalah. Kami tahu bahawa kereta tanpa roda tidak berguna, jadi itulah sebab kami memasang semua bahagian objek, iaitu hubungan pengagregatan.

Contoh Komposisi dan Pengagregatan dalam Java

Diberikan di bawah adalah contoh gubahan dan perhubungan pengagregatan:

Contoh #1: Komposisi

Kod:

import java.io.*;
import java.util.*;
class Lib
{
public String name_book;
public String bk_author;
Lib(String name_book, String bk_author)
{
this.name_book = name_book;
this.bk_author = bk_author;
}
}
class Library
{
private final List<Lib> Lib_books;
Library (List<Lib> Lib_books)
{
this.Lib_books =Lib_books;
}
public List<Lib> book_details(){
return Lib_books;
}
}
class composition
{
public static void main (String[] args)
{
Lib book1 = new Lib("Database management", "Rajiv Chopra ");
Lib book2 = new Lib("MySql", "Rajiv Chopra l");
Lib book3 = new Lib("oracle", "Donald Burleson");
List<Lib> Lib_books = new ArrayList<Lib>();
Lib_books.add(book1);
Lib_books.add(book2);
Lib_books.add(book3);
Library library = new Library(Lib_books);
List<Lib> bks = library.book_details();
for(Lib bk : bks){
System.out.println("name_book : " + bk.name_book + " and "
+" bk_author : " + bk.bk_author);
}
}
}

Penjelasan:

  • Dalam contoh di atas, kami cuba melaksanakan perhubungan gubahan dalam java.
  • Output akhir program di atas kami gambarkan dengan menggunakan syot kilat berikut.

Output:

Komposisi dan Pengagregatan di Jawa

Contoh #2: Hubungan Pengagregatan

Kod:

import java.io.*;
import java.util.*;
class stud_class
{
String stud_name;
int roll_no ;
String stud_dept;
stud_class(String stud_name, int roll_no, String stud_dept)
{
this.stud_name = stud_name;
this.roll_no = roll_no;
this.stud_dept = stud_dept;
}
}
class Depofcollege
{
String stud_name;
private List<stud_class> students;
Depofcollege(String stud_name, List<stud_class> students)
{
this.stud_name = stud_name;
this.students = students;
}
public List<stud_class> getStudentsDetails()
{
return students;
}
}
class college
{
String collegeName;
private List<Depofcollege> departments;
college(String collegeName, List<Depofcollege> departments)
{
this.collegeName = collegeName;
this.departments = departments;
}
public int totalstudents()
{
int noOfStudents = 0;
List<stud_class> students;
for(Depofcollege dept : departments)
{
students = dept.getStudentsDetails();
for(stud_class s : students)
{
noOfStudents++;
}
}
return noOfStudents;
}
}
class aggregation
{
public static void main (String[] args)
{
stud_class stud1 = new stud_class("Sameer", 5, "IT");
stud_class stud2 = new stud_class("Pooja", 6, "IT");
stud_class stud3 = new stud_class("Sanddep", 8, "Mech");
stud_class stud4 = new stud_class("Jenny", 2, "Mech");
List <stud_class> i_students = new ArrayList<stud_class>();
i_students.add(stud1);
i_students.add(stud2);
List <stud_class> me_students = new ArrayList<stud_class>();
me_students.add(stud3);
me_students.add(stud4);
Depofcollege IT = new Depofcollege("IT", i_students);
Depofcollege Mech = new Depofcollege("Mech", me_students);
List <Depofcollege> departments = new ArrayList<Depofcollege>();
departments.add(IT);
departments.add(Mech);
college college= new college("MIT", departments);
System.out.print("Count of students: ");
System.out.print(college.totalstudents());
}
}

Penjelasan:

  • Dalam contoh di atas, kami cuba melaksanakan perhubungan pengagregatan dalam java.
  • Output akhir program di atas kami gambarkan dengan menggunakan syot kilat berikut.

Output:

Komposisi dan Pengagregatan di Jawa

Kesimpulan

Kami telah melihat sintaks asas gubahan dan pengagregatan daripada artikel di atas, dan kami juga melihat contoh gubahan dan pengagregatan yang berbeza. Daripada artikel ini, kami telah melihat bagaimana dan bila kami menggunakan gubahan dan pengagregatan dalam java.

Atas ialah kandungan terperinci Komposisi dan Pengagregatan di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Aksara JawaArtikel seterusnya:Aksara Jawa