Kopling Longgar vs Kopling Ketat di Jawa: Perbedaan Antara Kopling Longgar & Kopling Ketat
Diterbitkan: 2021-05-02Daftar isi
pengantar
Java adalah bahasa pemrograman berorientasi objek yang menggunakan kelas dan objek. Coupling memainkan peran penting di Java jika Anda bekerja dengan kelas dan objek dalam bahasa Java. Coupling mengacu pada tingkat pengetahuan yang dimiliki satu elemen di Java tentang elemen lainnya. Ini adalah tingkat penggunaan satu kelas oleh kelas lain. Artikel ini akan memberi Anda pemahaman mendalam tentang kopling di Jawa , jenisnya dengan contoh.
Apa itu Kopling di Jawa?
Kopling tidak lain adalah ketergantungan satu kelas dengan kelas lainnya. Jika satu objek dalam kode menggunakan objek lain dalam program, itu disebut kopling longgar di Java . Dalam coupling, dua kelas atau objek berkolaborasi dan bekerja satu sama lain untuk menyelesaikan tugas yang telah ditentukan sebelumnya. Ini berarti bahwa satu elemen membutuhkan elemen lain untuk menyelesaikan suatu fungsi. Disebut kolaborasi ketika satu kelas memanggil logika kelas lain.
Apa Jenis Kopling?
Kopling di Jawa terdiri dari dua jenis.
Kopling Longgar di Jawa
Ketika dua kelas, modul, atau komponen memiliki ketergantungan rendah satu sama lain, itu disebut kopling longgar di Java . Kopling longgar di Jawa berarti bahwa kelas independen satu sama lain. Satu-satunya pengetahuan yang dimiliki satu kelas tentang kelas lain adalah apa yang telah diekspos oleh kelas lain melalui antarmukanya dalam kopling longgar. Jika situasi membutuhkan objek untuk digunakan dari luar, itu disebut situasi kopling longgar .
Di sini, objek induk jarang menggunakan objek, dan objek dapat dengan mudah diubah dari sumber eksternal. Kopling longgar di Jawa memiliki keunggulan dibandingkan kopling ketat karena mengurangi pemeliharaan dan upaya kode. Perubahan di satu kelas tidak memerlukan perubahan di kelas lain, dan dua kelas dapat bekerja secara independen.
Contoh 1: Bayangkan Anda telah membuat dua kelas, A dan B, dalam program Anda. Kelas A disebut volume, dan kelas B mengevaluasi volume silinder. Jika Anda mengubah volume kelas A, maka Anda tidak dipaksa untuk mengubah kelas B. Ini disebut kopling longgar di Java . Ketika kelas A membutuhkan perubahan di kelas B, maka Anda memiliki kopling yang ketat.

Kode
paket longgar; volume kelas { public static void main(String args[]) { Silinder b = Silinder baru (25, 25, 25); System.out.println(b.getVolume()); } } silinder kelas akhir { volume int pribadi; Silinder(int panjang, int lebar, int tinggi) { this.volume = panjang * lebar * tinggi; } publik int getVolume() { volume kembali; } } |
Penjelasan: Dalam contoh di atas, kelas A dan kelas B digabungkan secara longgar.
Contoh 2
impor java.io.IOException; antarmuka Makanan { tampilan batal publik(); } kelas Italia { makanan; publik Italia(Makanan){ ini.s = s; } tampilan batal publik(){ System.out.println("Italia"); s.display(); } } kelas Cina mengimplementasikan Makanan { bahasa Cina publik(){} tampilan batal publik(){ System.out.println("Cina"); } } kelas alat-alat Meksiko Makanan { Meksiko publik(){} tampilan batal publik(){ ![]() System.out.println("Meksiko"); } } Tes kelas publik { public static void main(String args[]) melempar IOException { Makanan b = Cina baru(); Makanan c = Meksiko baru(); Italia a = bahasa Italia baru(b); //a.display() akan mencetak bahasa Italia dan Cina a.tampilan(); Italia a1 = bahasa Italia baru(c); //a.display() akan mencetak bahasa Italia dan Meksiko a1.display(); } } |
Keluaran
Italia Cina Italia Meksiko |
Penjelasan: Dalam contoh di atas, ketiga kelas digabungkan secara longgar. Ini berarti bahwa Anda dapat menggunakan antarmuka makanan untuk menyediakan layanan dengan menyuntikkan salah satu layanan yang diimplementasikan.
Dapatkan gelar Rekayasa Perangkat Lunak secara online dari Universitas top dunia. Dapatkan Program PG Eksekutif, Program Sertifikat Tingkat Lanjut, atau Program Magister untuk mempercepat karier Anda.
kopling ketat
Ketika dua kelas sangat bergantung satu sama lain, itu disebut kopling ketat. Itu terjadi ketika kelas mengambil terlalu banyak tanggung jawab atau di mana perubahan di satu kelas membutuhkan perubahan di kelas lain. Dalam kopling ketat, objek (objek induk) membuat objek lain (objek anak) untuk penggunaannya. Jika objek induk tahu lebih banyak tentang bagaimana objek anak diimplementasikan, kita dapat mengatakan bahwa objek induk dan anak digabungkan secara erat.
Contoh: Bayangkan Anda telah membuat dua kelas A dan B, dalam program Anda. Kelas A disebut volume, dan kelas B mengevaluasi volume silinder. Jika Anda membuat perubahan dalam volume, maka perubahan yang sama akan tercermin di kelas B. Oleh karena itu, kita dapat mengatakan bahwa kedua kelas sangat bergantung satu sama lain dan digabungkan dengan erat.
Kode

pengencang paket; volume kelas { public static void main(String args[]) { Silinder b = Silinder baru(15, 15, 15); System.out.println(b.volume); }} kelas silinder { volume int publik; Silinder(int panjang, int lebar, int tinggi) { this.volume = panjang * lebar * tinggi; }} |
Keluaran
3375 |
Penjelasan: Pada contoh di atas, kelas A dan kelas B terikat bersama dan bekerja sama sebagai satu tim.
Perbedaan Antara Kopling Longgar dan Kopling Ketat
Tabel berikut mencantumkan perbedaan antara kopling longgar dan kopling ketat.
Kopling longgar | kopling ketat |
Objek tidak tergantung satu sama lain. | Satu objek bergantung pada objek lain untuk menyelesaikan tugas. |
Testabilitas yang lebih baik | Testabilitas tidak sebesar kopling longgar di Jawa . |
Komunikasi asinkron | Komunikasi sinkron |
Kurang koordinasi. Bertukar kode antara dua kelas tidak mudah. | Memberikan koordinasi yang lebih baik. Anda dapat dengan mudah menukar kode antara dua objek. |
Tidak ada konsep antarmuka | Mengikuti prinsip GOF untuk antarmuka |
Aliran informasi lebih sedikit | Aliran informasi lebih lanjut |
Sangat mudah berubah | Itu tidak memiliki kemampuan perubahan. |
Kesimpulan
Singkatnya, kopling longgar di Jawa jauh lebih baik dibandingkan dengan kopling ketat. Ini memberikan fleksibilitas yang lebih baik dan penggunaan kembali kode. Karena kedua kelas independen satu sama lain, itu membuat perubahan kode menjadi sangat mudah. Ini juga memberikan kemampuan pengujian yang lebih baik.
Jika Anda tertarik untuk mempelajari lebih lanjut tentang Pengembangan Perangkat Lunak, lihat Master of Science dalam Ilmu Komputer dari LJMU yang dirancang untuk para profesional yang bekerja dan Penawaran12+ Proyek & Tugas, 1-ON-1 Dengan Mentor Industri, 500+ Jam Pembelajaran.