Wednesday, 2 November 2011

Inheritance pada Class

Inheritance (indonesia : Warisan) adalah cara yang digunakan untuk menurunkan sifat-sifat atau objek-objek (baik variabel atau fungsi) pada Pemrograman Berorientasi Objek (PBO, inggris : Object Oriented Programming - OOP). Penurunan objek ini dimaksudkan agar kita tidak menuliskan 2 kali objek yang memiliki nilai/fungsi yang sama. Untuk lebih jelasnya mari kita lihat kode berikut :


#include  < iostream > 

using namespace std;

class Badan{
    int tinggi, berat; //berat badan
public:
    Badan() :tinggi(100) , berat(50) {} //default Constructor
    void set(int t, int b){
        tinggi = t; berat = b; }
    int getTinggi(){ return tinggi; }
    int getBerat(){ return berat; }
};

//Kelas Turunan dari Badan
class Alien : public Badan{
public:
    //ketLien = Keterangan Alien
    void ketLien(){
        cout << "Tinggi Alien : " << getTinggi() << endl;
        cout << "Berat Alien : " << getBerat() << endl;
    }
};

class Manusia : public Badan{
public:
    //ketMan = Keterangan Manusia
    void ketMan(){
        cout << "Tinggi Manusia : " << getTinggi() << endl;
        cout << "Berat Manusia : " << getBerat() << endl;
    }
};

int main(int argc, char* argv[]){
    Alien A;
    A.set(150,40);
    A.ketLien();

    cout << endl;

    Manusia B;
    B.set(170,60);
    B.ketMan();

    return 0;
}

Kelas Alien dan Manusia merupakan kelas turunan dari kelas Badan. Dikarenakan alien dan manusia pasti memiliki objek yang sama, yaitu tinggi dan berat badan. Dengan pewarisan memudahkan kita dalam menambahkan objek yang sama itu, dibandingkan harus menuliskannya didalam kedua kelas (Alien dan Manusia). Sehingga pengunaan baris kode yang diperlukan dapat diminimalisir. Ditambah lagi jika fungsi yang digunakan bersama semakin banyak seperti fungsi berjalan, berlari, atau bekerja yang akan digunakan oleh Alien atau Manusia (atau Makhluk lainnya? ).

Penambahan warisannya cukup dengan tanda titik dua (:) pada kelas yang diinginkan. Selain itu kita juga dapat menambahkan 2 atau lebih kelas yang ingin mewariskan sifatnya (menggunakan koma ',' setelah kelas dasar pertama). Seperti contoh berikut:


//bentuk umum kelas turunan.
class Turunan : public Utama{
 ...
};

//contoh, dengan 2 kelas yang mewariskan
class Alien : public Badan ,  public Sayap{
 ...
};

Dapat dilihat dari kode diatas kelas alien memiliki objek dari kelas Badan dan Sayap. Objek yang dapat digunakan oleh kelas turunan adalah objek yang memiliki hak akses public dan protected. So Happy Coding! ...

- krofz

No comments:

Post a Comment

Maaf jika komentar anda lama terbitnya ^__^, penulis berusaha OL sesering mungkin. Komentar anda adalah semangat blog ini, dan juga semangat para blogger lainnya. You can use XHTML tags: <a href="" rel="link"> </a>, <strong> </strong>, <b> </b>, <em> </em>, <i> </i>.

Spesial character use :
&lt; for <
&gt; for >


Use Pastebin.com for alternative to display your code :) .

 

back to top

back to top