Komposisi dan agregasi

Kelas dan objek dapat dihubungkan satu sama lain. Warisan menjelaskan hubungan "IS A". Seekor singa ADALAH binatang. Hubungan ini dengan mudah diekspresikan menggunakan warisan, di mana Animalakan menjadi kelas induk dan Lionakan menjadi anak. Tetapi tidak setiap hubungan di dunia digambarkan dengan tepat seperti ini. Misalnya, keyboard pasti memiliki hubungan dengan komputer, tetapi itu bukan komputer . Tangan memiliki hubungan tertentu dengan seseorang, tetapi mereka bukanlah manusia. Kasus-kasus ini mewakili jenis hubungan yang berbeda — bukan "IS A", tetapi "HAS A". Tangan bukanlah seseorang, tetapi seseorang MEMILIKI tangan. Keyboard bukanlah komputer, tetapi komputer MEMILIKI keyboard. "MEMPUNYAI SEBUAH". Perbedaan antara konsep-konsep ini terletak pada "keketatan" hubungan. Mari kita ambil contoh sederhana: Kami memiliki file Car. Setiap mobil memiliki mesin. Selain itu, setiap mobil dapat mengangkut penumpang. Apa perbedaan mendasar antara bidang Engine enginedan Passenger[] passengers? Jika penumpang Aduduk di dalam mobil, bukan berarti penumpang Bdan Cjuga tidak boleh berada di dalam mobil. Satu mobil bisa menampung banyak penumpang. Apalagi, semua penumpang boleh keluar dari mobil, namun tetap berfungsi dengan lancar. Hubungan antara Carkelas dan Passenger[] passengersarray kurang ketat. Ini disebut agregasi . Inilah artikel bagus tentang topik ini: Hubungan antar kelas (objek). Ini memberikan contoh agregasi yang bagus. Katakanlah kita memiliki sebuah Studentkelas yang mewakili seorang siswa, dan sebuah kelas StudentGroupyang mewakili sekelompok siswa. Seorang siswa dapat menjadi anggota klub fisika, klub penggemar siswa Star Wars, atau klub komedi. Komposisi adalah jenis hubungan yang lebih ketat. Saat menggunakan komposisi, sebuah objek memiliki objek lain, tetapi tidak dapat menjadi milik objek lain dengan jenis yang sama. Contoh paling sederhana adalah mesin mobil. Jika sebuah mobil memiliki mesin, maka mesin tersebut tidak dapat menjadi milik mobil lain. Seperti yang Anda lihat, hubungan itu jauh lebih ketat daripada Cardan Passengers.Hubungan antar kelas.  Warisan, komposisi dan agregasi - 4