Perbedaan Kunci – Warisan Berganda vs Multilevel
Pemrograman Berorientasi Objek (OOP) adalah paradigma untuk merancang program menggunakan kelas dan metode. Skenario dunia nyata dapat dipetakan ke objek. Oleh karena itu, mudah untuk membangun solusi perangkat lunak. Kelas adalah cetak biru untuk membangun sebuah objek. Ini berisi properti dan metode. Misalnya, sebelum membuat objek siswa, harus ada siswa kelas dengan properti dan metode. Seorang siswa dapat memiliki properti seperti id siswa, nama dan metode seperti membaca, menulis, belajar. Metode menggambarkan perilaku sementara properti adalah atributnya. Setelah membuat kelas, dimungkinkan untuk membuat objek menggunakan mereka. Pembuatan objek juga dikenal sebagai Instansiasi Objek. Objek tidak ada dalam isolasi. Mereka berkomunikasi dengan objek lain dan data dilewatkan di dalam objek. Salah satu pilar OOP adalah Warisan. Tujuan dari Inheritance adalah untuk meningkatkan penggunaan kembali kode. Ini menciptakan kelas properti dan metode baru dari kelas yang sudah ada. Kelas yang ada dikenal sebagai kelas dasar, dan kelas baru disebut kelas turunan. Multiple Inheritance dan Multilevel Inheritance adalah tipe pewarisan. Artikel ini membahas perbedaan di antara mereka. Perbedaan utama antara Warisan Berganda dan Bertingkat adalah bahwa Warisan Berganda adalah ketika sebuah kelas mewarisi dari banyak kelas dasar sedangkan Warisan Bertingkat adalah ketika sebuah kelas mewarisi dari kelas turunan menjadikan kelas turunan itu sebagai kelas dasar untuk kelas baru.
Apa itu Multiple Inheritance?
Multiple Inheritance adalah ketika sebuah kelas mewarisi lebih dari satu kelas dasar.
Gambar 01: Multiple Inheritance
A B dan C adalah kelas. A dan B adalah kelas dasar, dan C adalah kelas turunan. Kelas C harus mengelola ketergantungan kelas dasar A dan B. Warisan berganda tidak banyak digunakan dalam proyek perangkat lunak. Itu membuat sistem lebih kompleks karena satu kelas mewarisi banyak kelas.
Misalnya, asumsikan bahwa kelas A dan B keduanya memiliki metode dengan nama yang sama yaitu sum() dan kelas C menurunkan kedua kelas. Setelah membuat objek bertipe C dan memanggil metode sum() dapat menyebabkan kesalahan karena kedua kelas memiliki metode yang sama. Kompiler tidak tahu fungsi mana yang harus dipanggil. Oleh karena itu, Multiple Inheritance meningkatkan kompleksitas suatu sistem. Multiple Inheritance didukung dalam bahasa C++ tetapi bahasa seperti Java, C tidak mendukung Multiple Inheritance. Sebaliknya, bahasa-bahasa ini menggunakan antarmuka yang mirip dengan kelas tetapi tidak dapat dipakai.
Apa itu Warisan Bertingkat?
Multilevel Inheritance adalah ketika sebuah kelas mewarisi dari kelas turunan menjadikan kelas turunan itu sebagai kelas dasar untuk kelas baru.
Gambar 02: Warisan Bertingkat
Pewarisan bertingkat memiliki tiga tingkat. Kelas perantara yang B mewarisi dari kelas A dan kelas C mewarisi dari kelas B. A adalah kelas dasar untuk B dan B adalah kelas dasar untuk C.
Program yang mengimplementasikan Multilevel Inheritance adalah sebagai berikut. Program ini ditulis menggunakan Java.
Gambar 03: Program yang mengimplementasikan Multilevel Inheritance
Menurut program di atas, kelas A adalah kelas dasar untuk kelas B. Kelas B adalah kelas dasar untuk kelas C. Semua properti dan metode kelas A dapat diakses oleh kelas B. Semua properti dan metode kelas B dapat diakses oleh kelas C. Oleh karena itu, kelas C dapat mengakses properti dan metode dari A dan B. Saat membuat objek tipe C, dimungkinkan untuk memanggil ketiga metode A(), B() dan C(). Outputnya akan memberikan A, B, C.
Apa Persamaan Antara Warisan Berganda dan Bertingkat?
Keduanya adalah jenis Warisan
Apa Perbedaan Antara Warisan Berganda dan Bertingkat?
Warisan Berganda vs Warisan Bertingkat |
|
Multiple Inheritance adalah tipe Inheritance di mana sebuah kelas mewarisi lebih dari satu kelas dasar. | Multilevel Inheritance adalah tipe Inheritance yang diturunkan dari kelas turunan, menjadikan kelas turunan tersebut sebagai kelas dasar untuk kelas baru. |
Penggunaan | |
Multiple Inheritance tidak banyak digunakan karena membuat sistem menjadi lebih kompleks. | Pewarisan Multilevel banyak digunakan. |
Tingkat Kelas | |
Multiple Inheritance memiliki dua level kelas yaitu, kelas dasar dan kelas turunan. | Multilevel Inheritance memiliki tiga tingkatan kelas yaitu, kelas dasar, kelas menengah dan kelas turunan. |
Ringkasan – Warisan Berganda vs Bertingkat
Inheritance adalah pilar utama Pemrograman Berorientasi Objek. Ada berbagai jenis Warisan; mereka adalah Warisan Tingkat Tunggal, Warisan Bertingkat, Warisan Berganda, Warisan Hirarki, dan Warisan Hibrida. Warisan Tingkat Tunggal memiliki satu kelas dasar dan satu kelas turunan. Hierarchical Inheritance memiliki satu kelas dasar dan banyak kelas turunan. Hybrid Inheritance adalah kombinasi dari Multilevel dan Multiple Inheritance. Artikel ini menjelaskan perbedaan antara Warisan Berganda dan Warisan Bertingkat. Perbedaan antara Warisan Berganda dan Bertingkat adalah bahwa Warisan Berganda adalah ketika sebuah kelas mewarisi dari banyak kelas dasar sedangkan Warisan Bertingkat adalah ketika sebuah kelas mewarisi dari kelas turunan, menjadikan kelas turunan itu sebagai kelas dasar untuk kelas baru. Multilevel Inheritance lebih banyak digunakan daripada Multiple Inheritance.
Unduh Warisan Berganda vs Multilevel PDF
Anda dapat mengunduh versi PDF dari artikel ini dan menggunakannya untuk tujuan offline sesuai catatan kutipan. Silakan unduh versi PDF di sini Perbedaan Antara Warisan Berganda dan Bertingkat