Pada pertemuan ini, mari kita bahas mengenai Inheritance
Apa itu Inheritance?
Inheritance merupakan salah satu sifat dalam Class yang memungkinkan suatu class mewarisi attribute dan method class lain.
Apa itu Inheritance?
Inheritance merupakan salah satu sifat dalam Class yang memungkinkan suatu class mewarisi attribute dan method class lain.
Class yang mewariskan sifat disebut dengan Class Induk (base class), sedangkan class yang mewarisi sifat class lain disebut class Turunan (derived class).
Keuntungan dengan adanya Inheritance yaitu memungkinkan suatu kode-kode yang telah ditulis bisa digunakan kembali (reusability) dan pengembangan program (extenability) menjadi lebih efisien dan menghemat waktu karena kita tinggal menambahkan sifat-sifat baru yang dibutuhkan dalam Class Turunannya.
Cara pendeklarasian inheritance : class Turunan : type_access Induk
Ada 3 jenis type access, yaitu public, protected, dan private.
Pemakaian type access tersebut memiliki perbedaan dalam hak pengaksesan attribute dan method dalam class.
Keuntungan dengan adanya Inheritance yaitu memungkinkan suatu kode-kode yang telah ditulis bisa digunakan kembali (reusability) dan pengembangan program (extenability) menjadi lebih efisien dan menghemat waktu karena kita tinggal menambahkan sifat-sifat baru yang dibutuhkan dalam Class Turunannya.
Cara pendeklarasian inheritance : class Turunan : type_access Induk
Ada 3 jenis type access, yaitu public, protected, dan private.
Pemakaian type access tersebut memiliki perbedaan dalam hak pengaksesan attribute dan method dalam class.
Contoh coding
#include "iostream.h"
class Induk
{
public :
void info_induk()
{
cout << "method info_induk jalan" << endl;
}
};
class Anak : public Induk
{
public :
void info_anak()
{
cout << "method info_anak jalan" << endl;
}
};
void main()
{
Anak obj;
obj.info_induk(); // mewarisi method dari class Induk
obj.info_anak();
cin.get();
}
Hasil eksekusi :
method info_induk jalan
method info_anak jalan
Constructor dan Destructor pada Inheritance
Pada saat objek di class Turunan dibuat, constructor kelas Induk dengan sendirinya akan dijalankan, setelah itu baru constructor class Turunan, sedangkan untuk destructor, destructor class Turunan akan dijalankan dahulu, baru setelah itu destructor class Induk.
Inheritance juga bisa dilakukan dalam beberapa tingkat

Multiple Inheritance
adalah sebuah class yang mewarisi lebih dari satu class Induk.
Dalam multiple Inheritance bisa terjadi kerancuan apabila terdapat dua method pada class Induk dengan nama yang sama.
adalah sebuah class yang mewarisi lebih dari satu class Induk.
Dalam multiple Inheritance bisa terjadi kerancuan apabila terdapat dua method pada class Induk dengan nama yang sama.
contoh coding
#include "iostream.h"
#include "iostream.h"
class IndukSatu
{
public :
void info()
{
cout << "Info class IndukSatu" << endl;
}
};
class IndukDua
{
public :
void info()
{
cout << "Info class IndukDua" << endl;
}
};
class Anak : public IndukSatu, public IndukDua
{
};
void main()
{
Anak obj;
// obj.info(); --> menimbulkan error, compiler kebingungan karena ada 2 class Induk yang mewariskan method dengan nama yang sama
obj.IndukSatu::info(); //memanggil method info dari class IndukSatu
obj.IndukDua::info(); //memanggil method info dari class IndukDua
}
Hasil eksekusi
Info class IndukSatu
Info class IndukDua
0 komentar:
Posting Komentar