Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

INHERITANCE (PEWARISAN). Pendahuluan Inheritance (Pewarisan) adalah sifat dari suatu kelas yang dapat mewariskan anggota data maupun fungsi anggota ke.

Presentasi serupa


Presentasi berjudul: "INHERITANCE (PEWARISAN). Pendahuluan Inheritance (Pewarisan) adalah sifat dari suatu kelas yang dapat mewariskan anggota data maupun fungsi anggota ke."— Transcript presentasi:

1 INHERITANCE (PEWARISAN)

2 Pendahuluan Inheritance (Pewarisan) adalah sifat dari suatu kelas yang dapat mewariskan anggota data maupun fungsi anggota ke kelas lain Kelas yang mewarisi sifat dari kelas lain disebut dengan kelas turunan (derived class) Kelas yang mewariskan sifat ke kelas lain disebut dengan kelas dasar (base class) Keuntungan dari inheritance adalah memungkinkan penggunaan kembali kode yang sudah teruji benar, sehingga tidak perlu membuat kode yang sama setiap kali membuat program baru

3 Penentu Pewarisan Ada tiga macam penentu pewarisan: Private Protected Public

4 Penentu Pewarisan Private Sintaks: class NamaKelasTurunan : Private NamaKelasDasar atau class NamaKelasTurunan : NamaKelasDasar Contoh: class OrangTuaclass Anak : Private OrangTua{ …};

5 Penentu Pewarisan Private Sifat: - Semua anggota data dan fungsi anggota yang bersifat public dan protected pada kelas dasar akan diwariskan ke kelas turunan dengan sifat private - Anggota data dan fungsi anggota pada kelas dasar yang bersifat private tidak diwariskan - Konstruktor dan destruktor tidak diwariskan Contoh: 1. Pewarisan dengan penentu pewarisan private (iprivate.cpp)

6 Penentu Pewarisan Protected Sintaks: class NamaKelasTurunan : Protected NamaKelasDasar Contoh: class OrangTua { … }; class Anak : Portected OrangTua { … };

7 Penentu Pewarisan Protected Sifat: - Semua anggota data dan fungsi anggota yang bersifat public dan protected pada kelas dasar akan diwariskan ke kelas turunan dengan sifat protected - Anggota data dan fungsi anggota pada kelas dasar yang bersifat private tidak diwariskan - Konstruktor dan destruktor tidak diwariskan Contoh: 2. Pewarisan dengan penentu pewarisan protected (iprotect.cpp)

8 Penentu Pewarisan Public Sintaks: class NamaKelasTurunan : Public NamaKelasDasar Contoh: class OrangTua { … }; class Anak : Public OrangTua { … };

9 Penentu Pewarisan Public Sifat: - Semua anggota data dan fungsi anggota yang bersifat public dan protected pada kelas dasar akan diwariskan ke kelas turunan tanpa perubahan (protected diwariskan menjadi protected, public diwariskan menjadi public) - Anggota data dan fungsi anggota pada kelas dasar yang bersifat private tidak diwariskan - Konstruktor dan destruktor tidak diwariskan Contoh: 3. Pewarisan dengan penentu pewarisan public (ipublic.cpp)

10 Rangkuman Pewarisan Penentu Pewarisan Penentu Akses di Kelas Dasar Penentu Akses Baru di Kelas Turunan private tidak diwariskan protectedprivate publicprivate protectedprivatetidak diwariskan protected publicprotected publicprivatetidak diwariskan protected public

11 Akses ke Anggota Data yang bersifat Private Supaya bisa mengakses anggota data pada kelas dasar yang bersifat private, ada dua cara yang bisa dilakukan: 1. Mengubah penentu akses menjadi protected - Dengan mengubah penentu akses menjadi protected, maka anggota data bisa diakses dari kelas turunan - Digunakan jika anggota data dipakai dalam proses selanjutnya di kelas turunan 2. Memanggil konstruktor kelas dasar pada definisi konstruktor kelas turunan - Penentu akses di kelas dasar tetap private - Dipakai jika anggota data tidak dipakai pada proses selanjutnya di kelas turunan. Misal hanya dicetak melalui kelas dasar - Contoh: 4. Akses anggota data private lewat konstruktor (aksesprv.cpp)

12 Pewarisan Bertingkat Pada pewarisan bertingkat, terdapat dua atau lebih kelas turunan

13 Pewarisan Bertingkat Dalam kasus nama fungsi anggota ketiga kelas sama, maka harus menggunakan operator resolusi lingkup (::) untuk menyatakan kepemilikan Contoh: OrangTua::lihat()  fungsi lihat() milik kelas OrangTua Contoh Program: 5. Pewarisan bertingkat dengan nama fungsi anggota berbeda (wrstgkt1.cpp) 6. Pewarisan bertingkat dengan nama fungsi anggota sama (wrstgkt2.cpp)

14 Pewarisan Berganda Dalam pewarisan berganda, sebuah kelas dapat mewarisi sifat lebih dari satu kelas Contoh: Kelas Anak mewarisi sifat dari kelas Ayah dan kelas Ibu

15 Pewarisan Berganda Dalam kasus nama fungsi anggota pada kedua kelas dasar sama, maka untuk mengakses harus menggunakan operator resolusi lingkup (::) yang menandakan kepemilikan Contoh: Fungsi anggota di kelas Ayah dan Ibu sama yaitu lihat(). Cara memanggil fungsi: Anak anak1; anak1.Ayah::lihat(); anak1.Ibu::lihat(); Contoh Program: 7. Pewarisan Berganda (wrsbgnda.cpp)

16 Latihan 1. Buatlah program menebak angka dengan menggunakan pewarisan 2. Buatlah program untuk menentukan apakah sebuah tahun adalah tahun kabisat atau tidak dengan menggunakan pewarisan 3. Buatlah program untuk menentukan apakah suatu bilangan merupakan bilangan ganjil atau genap dengan menggunakan pewarisan berganda. Kalau bil genap, maka panggil fungsi cetak dari kelas dasar Genap. Kalau bil ganjil, maka panggil fungsi cetak dari kelas dasar Ganjil 4. Buatlah program dengan menggunakan pewarisan untuk memberi nilai dengan kondisi sbb: A : > 80, B : 68 – 79, C : 56 – 67, D : 45 – 55, E : < 45

17 Latihan 5. Buatlah program untuk mengubah huruf kecil menjadi huruf besar atau sebaliknya dengan menggunakan pewarisan berganda. Kalau huruf besar, maka panggil fungsi merubah ke huruf kecil dari kelas dasar Besar. Kalau huruf kecil, maka panggil fungsi merubah ke huruf besar dari kelas dasar Kecil


Download ppt "INHERITANCE (PEWARISAN). Pendahuluan Inheritance (Pewarisan) adalah sifat dari suatu kelas yang dapat mewariskan anggota data maupun fungsi anggota ke."

Presentasi serupa


Iklan oleh Google