Pewarisan Kelas Dalam C++


Dalam pemrograman berorientasi objek, pewarisan (inheritance) merupakan salah satu sifat utama yang menjadi ciri dari konsep pemrograman OOP. Suatu kelas dasar dalam program memiliki kemampuan untuk mewariskan sifat-sifat yang terdapat didalamnya ke kelas turunannya. Kelas dasar yang dimaksud disini adalah kelas yang akan dijadikan sebagai induk (base class) yang akan menurunkan sifat-sifatnya kedalam kelas-kelas turunannya (derived class).
Untuk mempermudah pemahaman, bentuk listing disini akan saya pecah menjadi beberapa bagian, sedangkan dalam bentuk aslinya ini merupakan satu kesatuan program dan jangan dipecah-pecah menjadi beberapa file🙂

Berikut ini contoh kelas dasar yang akan digunakan untuk membuat kelas turunan :

#include <iostream>

using namespace std;

class induk {
int x;
public:
void setX(int xx) {
x=xx;
}

int getX() {
return x;
}
}

Sekarang kita akan membuat kelas yang diturunkan dari kelas induk diatas :

class turunan: public induk {
int y;
public:
void setY(int yy) {
y=yy;
}

int getY() {
return y;
}
}

Untuk mengaplikasikan proses pewarisannya sekarang kita buat fungsi utamanya :

int main() {

induk a; // membuat instan kelas induk : a
a.setX(12);

cout<<”Nilai x yang akan dipanggil dari kelas induk : ”;
cout<<a.getX()<<endl;
cout<<”\n”<<endl;

turunan b; //membuat instan kelas turunan : b
b.setY(40);

cout<<”Nilai y yang terdapat pada kelas turunan : “;
cout<<a.getX()<<endl;
cout<<”\n”<<endl;

b.setX(35);

cout<<”Nilai x yang dipanggil dari kelas turunan : “;
cout<<b.getX()<<endl;
cout<<”\n”<<endl;

return 0;
}

Dari fungsi utama diatas kita dapat melihat bagaimana kelas dasar menurunkan sifat-sifatnya kedalam kelas turunannya bisa dilihat baris kode berikut :

b.setX(35);

cout<<”Nilai x yang dipanggil dari kelas turunan : “;
cout<<b.getX()<<endl;
cout<<”\n”<<endl;

Kelas turunan dapat memanggil fungsi yang terdapat dalam kelas utama setX() dengan memasukan nilai baru 35 dan memanggil fungsi getX(), hal ini terjadi karena kelas turunan mewariskan sifat objek yang ada pada kelas induk.

Satu Tanggapan

  1. Terimakasih🙂
    Sangat bermanfaat..

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: