bab 3 pbo c++ pewarisan

5
BAB III PEWARISAN 3.1. TUJUAN Tujuan pembelajaran dalam bab ini agar : 1. Mampu memahami konsep dari pewarisan. 2. Mampu membuat suatu kelas yang didasarkan kelas yang sudah ada sehingga mewarisi semua anggota. 3. Memahami cara pengaksesan pewarisan. 3.2. DASAR TEORI Pewarisan (inheritance) adalah penurunan sifat yang ada pada suatu kelas kepada kelas baru yang menjadi turunannya. Sifat-sifat suatu kelas ditentukan oleh data anggota dan metode, sehingga yang dimaksud penurunan sifat adalah penurunan data anggota atau metode. Kelas yang menurunkan sifat disebut kelas dasar (base class), sedangkan yang kelas baru yang mewarisi sifat kelas dasar disebut kelas turunan (derived class). Dengan pewarisan dapat diciptakan suatu kelas baru yang mana kelas tersebut mewarisi seluruh sifat kelas dasar yang mempunyai akses public atau protected ditambah sifat khusus dari kelas yang bersangkutan. Ketentuan ini tidak berlaku sebaliknya, artinya sifat yang ada pada kelas 24

Upload: ricko-skywriter

Post on 23-Jun-2015

713 views

Category:

Education


0 download

TRANSCRIPT

Page 1: BAB 3 PBO C++ Pewarisan

BAB III

PEWARISAN

3.1. TUJUAN

Tujuan pembelajaran dalam bab ini agar :

1. Mampu memahami konsep dari pewarisan.

2. Mampu membuat suatu kelas yang didasarkan kelas yang sudah ada

sehingga mewarisi semua anggota.

3. Memahami cara pengaksesan pewarisan.

3.2. DASAR TEORI

Pewarisan (inheritance) adalah penurunan sifat yang ada pada suatu

kelas kepada kelas baru yang menjadi turunannya. Sifat-sifat suatu kelas

ditentukan oleh data anggota dan metode, sehingga yang dimaksud

penurunan sifat adalah penurunan data anggota atau metode. Kelas yang

menurunkan sifat disebut kelas dasar (base class), sedangkan yang kelas

baru yang mewarisi sifat kelas dasar disebut kelas turunan (derived class).

Dengan pewarisan dapat diciptakan suatu kelas baru yang mana

kelas tersebut mewarisi seluruh sifat kelas dasar yang mempunyai akses

public atau protected ditambah sifat khusus dari kelas yang bersangkutan.

Ketentuan ini tidak berlaku sebaliknya, artinya sifat yang ada pada kelas

turunan tidak diwariskan pada kelas dasar. Ketentuan utama dengan adanya

pewarisan yaitu memungkinkan suatu kode yang telah ditulis mudah sekali

untuk digunakan kembali. Anda telah membuat suatu kelas yang telah diuji.

Jika suatu nanti, anda ingin menerapkan kode tersebut pada sesuatu yang

mempunyai sifat-sifat kelas tersebut, anda tinggal mewariskan kelas yang

telah ada di kelas baru (kelas turunan). Anda tidak perlu mengotak-atik

kelas yang teruji, sehingga efek samping yang tidak diharapkan tidak

terjadi. Dengan cara ini pengembangan program menjadi lebih efisien dan

menghemat waktu. Selain itu, kita dapat menambahkan sifat-sifat baru yang

24

Page 2: BAB 3 PBO C++ Pewarisan

25

tidak ada pada kelas dasar atau bahkan dapat mengganti sifat-sifat pada

kelas turunan, yang berbeda dengan sifat kelas dasar.

3.3. ANALISA PRAKTIKUM

Untuk pewarisan, contohnya adalah sebagai berikut :

//untuk no 1,2,3,4 dan seterusnya hanya merupakan no untuk keterangan

kode

#include<iostream.h>

#include<conio.h>

1. class Basis

{

2. private:

3. int alpha;

4. int bravo;

5. public:

6. void info_basis()

{

7. cout<<"info_basis() dijalankan.... "<<endl;

}

};

8. class Turunan: public Basis

{

9. public:

10. void info_turunan()

{

11. cout<<"info_turunan() dijalankan... "<<endl;

}

};

Page 3: BAB 3 PBO C++ Pewarisan

26

12. void main()

{

13. clrscr();

14. Turunan anak;

15. anak.info_basis();

16. anak.info_turunan();

getche();

}

Dan hasilnya adalah sebagai berikut :

Keterangan :

1. No. 1 untuk medeklarasikan bahwa buku sebagai kelasnya.

2. No. 2 untuk memdeklarasikan bahwa hak aksesnya hanya secara

khusus.

3. No. 3 dan No. 4 merupakan objek dari kelas buku yang dimana alpha

dan bravo yang menggunakan int adalah bilangan integer.

4. No. 5 untuk medeklarasikan bahwa hak aksesnya dapat diakses secara

umum.

5. No. 6 berfungsi sebagai info dari basis.

6. No. 7 sebagai perintah masukkan untuk menampilkan script dalam

bentuk hasil eksekusi.

7. No. 8 berfungsi untuk mendeklarasikan kelas turunan yang dapat

mengakses basis.

Gambar 3.1. Hasil eksekusi untuk pewarisan.

Page 4: BAB 3 PBO C++ Pewarisan

27

8. No. 9 untuk mendeklarasikan bahwa hak aksesnya dapat diakses secara

umum.

9. No. 10 sebagai info dari Turunan yang merupakan turunan dari

basis.

10. No. 11 sebagai perintah masukkan untuk menampilkan script dalam

bentuk hasil eksekusi.

11. No. 12 sebagai fungsi utama program.

12. No. 13 berfungsi untuk membersihkan layar.

13. No. 14 hingga 16 berfungsi untuk memanggil fungsi yang telah kita

deklarasikan sebelumnya.

3.4. KESIMPULAN

Berdasarkan percobaan yang telah kita lakukan pada bab ini, maka kita

dapat menarik kesimpulan bahwa :

1. Kelas turunan dapat mengakses kelas basis.

2. Namun kelas basis tidak dapat mengakses kelas turunan.

3. Sifat-sifat suatu kelas ditentukan oleh data anggota dan metode,

sehingga yang dimaksud penurunan sifat adalah penurunan data anggota

atau metode.