1 / 11

Inheritance (pewarisan)

Inheritance (pewarisan). Dalam C++ dimungkinkan untuk mewariskan class atau fungsi ke kelas atau fungsi lain Sifat ini disebut pewarisan (Inheritance) Class yg mewarisi sifat kelas lain disebut turunan (derived clas) Class yg mewariskan sifat ke kelas lain disebut class dasar (base class).

lilka
Download Presentation

Inheritance (pewarisan)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Inheritance (pewarisan) Dalam C++ dimungkinkan untuk mewariskan class atau fungsi ke kelas atau fungsi lain Sifat ini disebut pewarisan (Inheritance) Class yg mewarisi sifat kelas lain disebut turunan (derived clas) Class yg mewariskan sifat ke kelas lain disebut class dasar (base class)

  2. Sifat A Sifat A Sifat yg di wariskan Sifat B Sifat B Sifat C Sifat spesifik Class dasar Class turunan

  3. Info turunan di jalankan..... Judul : C++ Pengarang: Borland Jumlah : 5 : class Buku { protected : char judul[20]; char pengarang[20]; int jumlah; public : void inisialisasi(char *Judul, char *Pengarang,int Jumlah) { strcpy(judul, Judul); strcpy(pengarang, Pengarang); jumlah = Jumlah; } void info() { cout << "Judul : " << judul << endl; cout << "Pengarang : " << pengarang << endl; cout << "Jumlah : " << jumlah << endl; } } ; class Turunan : public Buku { public: void info_turunan() { cout<<“Info turunan di jalankan....." << endl; } }; int main() { Turunan anak; anak.info_turunan(); anak.inisialisasi("C++", "Borland", 5); anak.info(); return 0; } KELUARAN TANDA TITIK DUA

  4. r r = jari-jari penutup tabung t = tinggi tabung Permukaan Tertutup t Menghitung luas permukaan tabung tertutup

  5. Bentuk tabung pada Gbr.1 mempunyai dua permukaan yang tertutup sehingga untuk menghitung luas keseluruhan permukaan tabung maka perlu tahapan seperti berikut, Tahap I : menghitung luas kedua permukaan penutup(2πr2) Tahap II: menghitung luas permukaan yang mengelilingi tabung(2πrt) Tahap III: menjumlahkan luas pada Tahap I & II (2πr2) + (2πrt)

  6. /* --------------------------------------*/ /* Nama File: WARIS02.C */ /* Pewarisan */ /* --------------------------------------*/ #include <iostream.h> #include <conio.h> #include <math.h> class Luas_Permukaan // Menghitung luas permukaan kedua penutup { // (Tahap I) protected: float luas_penutup; float jari_jari_penutup; public: void menghitung_luas_penutup() { float jari_jari; cout << "Jari-jari kedua penutup tabung : "; cin >> jari_jari; cout << endl; jari_jari_penutup = jari_jari; luas_penutup = 2 * 3.14 * (pow(jari_jari_penutup, 2)); } };

  7. class Dinding_Tabung:public Luas_Permukaan // Menghitung luas { // dinding // (Tahap II) protected: float luas_dinding_tabung; public: void menghitung_luas_dinding_tabung() { float tinggi_tabung; cout << "Tinggi tabung : "; cin >> tinggi_tabung; cout << endl; luas_dinding_tabung = 2 * 3.14 * jari_jari_penutup * tinggi_tabung; } };

  8. class Luas_Tabung:public Dinding_Tabung // Menghitung jumlah luas { // tabung (Tahap III) public: void luas_keseluruhan() { float luas_tabung; luas_tabung = luas_penutup + luas_dinding_tabung; cout << "Luas Tabung : " << luas_tabung; } };

  9. main() { clrscr(); // Hapus layar monitor Luas_Tabung Luas_Permukaan_Tabung; // definisi obyek/kelas Luas_Permukaan_Tabung.menghitung_luas_penutup(); cout << endl; Luas_Permukaan_Tabung.menghitung_luas_dinding_tabung(); cout << endl; Luas_Permukaan_Tabung.luas_keseluruhan(); getch(); // Berhenti sejenak untuk melihat keluaran dan tekan // tombol apa saja pada papan ketik untuk melanjutkan clrscr(); // Hapus layar monitor }

  10. Keluaran setelah program di-run Jari-jari kedua penutup tabung : 20 Tinggi tabung : 50 Luas tabung : 8792

  11. class Kendaraan { protected: char nama[15]; public: Kendaraan(char *nama_kendaraan = "XXX") { strcpy(nama, nama_kendaraan); cout << "Hidupkan kendaraan anda..." << endl; } ~Kendaraan() { cout << "Matikan mesin kendaraan anda..." << endl; } void info_kendaraan() { cout << nama << " sedang berjalan .." << endl; } }; class Truk : public Kendaraan { public: Truk(char *nama_truk) : Kendaraan(nama_truk) { cout << "Hidupkan mesin truk ... " << endl; } ~Truk() { cout << "Matikan mesin truk..." << endl; } }; int main() { Truk fuso("Truk Fuso"); fuso.info_kendaraan(); cout << "Akhir program... " <<endl; return 0; } Hidupkan kendaraan anda... Hidupkan mesin truk ... Truk Fuso sedang berjalan .. Akhir program... Matikan mesin truk... Matikan mesin kendaraan anda...

More Related