Pewarisan multiclass adalah ada satu class yang mana objek ini sebagai anak yang
mempunyai dua induk.
B = induk = C
A Anak
Contoh : sebuah tabung memiliki luas permukaan yang terdiri dari 2 buah lingkaran dan 1
persegi panjang yaitu sebagai selimutnya.
Luas permukaan tabung bisa kita hitung dari luas lingkaran dan luas persegi panjang.
Dimana luas persegi panjang dihitung dari parameter tinggi tab ung dan keliling lingkaran.
= induk =
Anak
class lingkaran{
public:
float radius;
float luas_lingkaran();
float keliling_lingkaran();
};
class segiempat{
public:
float panjang, lebar;
float luas_segiempat();
};
int main() {
// Write C++ code here
tabung tabung1(10,4);
tabung1.luas_permukaan();
return 0;
}
Ketika ingin membatasi methode yang punya anaknya tidak turun ke bawah maka kita dapat
menggunakan hak akses yang tidak public, artinya ketika diturunkan maka akan berubah
sesuai dengan tipe enkapsulasi pewarisan yang digunakan.
Pewarisan Multilevel
Pewarisan multilevel adalah pewarisan yang levelnya bertingkat. Misalnya, dalam sebuah
class ada induk dan anak, induk mewarisi membernya ke anak. Dalam multilevel anak
mewarisi lagi ke cucu.
Induk (A)
Contoh program:
#include <iostream>
struct induk{
int member_induk;
};
int member_anak;
};
int member_cucu;
};
int main() {
cucu cucu_ku;
cucu_ku.member_cucu;
cucu_ku.member_anak;
cucu_ku.member_induk;
return 0;
Output:
Jika dirunning tidak ada error, artinya cucu telah berhasil menarik 2 member diatasnya yaitu
member anak dan member induk. Ketika kita lakukan pewarisan multilevel maka semua member
yang ada diatasnya akan diwarisi kebawah.