1 Pertemuan 16 Multiple Inheritance Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.

Slides:



Advertisements
Presentasi serupa
Introduction to Algorithm evaluation Soal Matrikulasi Buka Buku
Advertisements

Polymorphism Suatu fungsi anggota dari suatu class dapat dijadikan sebagai fungsi virtual Jika fungsi ini dideklarasikan kembali pada class turunan dan.
Inheritance (pewarisan)
PEWARISAN ( INHERITANCE)
10 KELAS class nama_class struct nama_struct
BAB III – CLASS (1) DIKTAT PBO Oleh: Adam Mukharil B. S.Kom.
PENGENALAN c++ DAN STRUKTUR DASAR C++
Departemen Ilmu Komputer FMIPA IPB 2013
ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM
ARRAY OF STRUCT Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
Class.
Activity Diagram Memperlihatkan perilaku dinamis (berorientasi pada aktivitas) Tujuan –Model business workflows –Model operations.
Pertemuan 7 inheritance.
#include //bagian modul int hitung(x,y) { return(x+y); } //bagian utama main() { int jumlah,a,b; a=8; b=2; jumlah=hitung(a,b); cout
Jawaban ujian MID. #include int pil; char tny; main(){ menu: cout
Matakuliah : T0456 ~ Algoritma dan Metode Object Oriented Programming
1 Pertemuan 14 Operator Overloading Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
Operator Overloading Pertemuan 20 Matakuliah: T0456 / Algoritma dan Metode Object Oriented Programming Tahun: 2007.
Object Oriented Programming Bag.2 Pertemuan 24 Dasar Pemrograman Renni Angreni, S.Kom.
1 Pertemuan 4 ELEMEN DASAR C++ Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
Structure Data - Array Pertemuan 7 Matakuliah: T0456 / Algoritma dan Metode Object Oriented Programming Tahun: 2007.
STRUCT OF ARRAY Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
Friend. Adalah fungsi bukan anggota kelas yg dapat mengakses anggota kelas. Secara umum friend berguna jika terdapat suatu operasi yg hendak mengakses.
Bag.3 Object Oriented Programming Pertemuan 25 Dasar Pemrograman
1 Pertemuan 6 Encapsulation Lanjutan Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
STREAM INPUT/OUPUT Pertemuan 4 Matakuliah: T0456 / Algoritma dan Metode Object Oriented Programming Tahun: 2007.
1 Pertemuan 5 STREAM INPUT/OUPUT Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
Bab 05 Tipe Data dan Mengisi Variabel
FUNCTIONS Pertemuan 9 Matakuliah: T0456 / Algoritma dan Metode Object Oriented Programming Tahun: 2007.
Matakuliah : T0456 ~ Algoritma dan Metode Object Oriented Programming
Inheritance Matakuliah : T0984 / Algoritma dan Metode Object Oriented Programming II Pertemuan : 4 Tahun : 2008 Versi : 1/0.
1 Pertemuan 1 Algoritma Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
1 Pertemuan 17 Polymorphism Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
1 Pertemuan 9 Inheritance Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
OPERASI JUMP DAN EXCEPTION HANDLING
Pertemuan 6 PEWARISAN AND POLYMORPHISM
1 Pertemuan 8 Structure Data Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
1 Pertemuan 18 Template Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
Struktur Kendali Pengulangan Pertemuan 6 Matakuliah: T0456 / Algoritma dan Metode Object Oriented Programming Tahun: 2007.
Matakuliah : T0456 ~ Algoritma dan Metode Object Oriented Programming
Pertemuan 10 Constructor dan Destructor
Algoritma sorting dasar (lanjutan) Pertemuan 11
Pertemuan 5 Balok Keran dan Balok Konsol
1 Pertemuan 8 Array & Pointer of Class Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
1 Pertemuan 12 Template Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
1 Pertemuan 13 Pembahasan Kasus Matakuliah: M0462/Programming I Tahun: 2005 Versi: >
// Contoh program c++ dengan fungsi template
Kontrak Kuliah Pengenalan OOP
FONDASI PEMROGRAMAN & STRUKTUR DATA #8
Pertemuan 10 Inheritance Lanjutan
Pertemuan 2 SINTAKS BAHASA, TIPE DATA, DAN OPERATOR
Constructor dan Destructor Pertemuan 17
Inheritance Pertemuan 21
Class dan Objek Lanjutan Pertemuan 18
Pertemuan 9 Pemrograman Berbasikan Objek
Sumber : repository.binus.ac.id/content/T0454/T ppt
Pemrograman Berorientsi Objek Pertemuan 15
Structure Data - Struct Pertemuan 8
Matakuliah : M0864/Programming I
S. Indriani Lestariningati, M.T
Inheritance lanjutan Pertemuan 22
Pilar Object Oriented Programming
Pemrograman Berorientasi Object
Generic Data Type Pertemuan 25
13. Pewarisan S. Indriani L, M.T 12. Pewarisan.
CLASS.
Matakuliah : T0456 ~ Algoritma dan Metode Object Oriented Programming
Pilar Object Oriented Programming
(Object Oriented Programming)
Inheritance (pewarisan)
Transcript presentasi:

1 Pertemuan 16 Multiple Inheritance Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5

2 Learning Outcomes Pada akhir pertemuan ini, diharapkan: Mahasiswa dapat Menghasilkan sebuah class hasil turunan (multiple inheritance) dari beberapa base class

3 Outline Materi Pengertian dari multple inheritance Fungsi anggota kelas turunan berganda Hirarkti class multiple inheritance Kerancuan dari multiple inheritance

4 Multiple Inheritance Pewarisan ganda (Multiple Inheritance), penurunan suatu class (derived class) dari beberapa class utama (based class) Code: class turunan: public utama1, private utama2 { -- class content -- };

5 Hirarki Multiple Inheritance BapakIbu Anak

6 Multiple Inheritance BC A Int data1 Method1 Method2 Method3 Method4 Method5 Int data1 Method1 Method2 Method3 Method4 Method5

7 Multiple Inheritance B C A Int data1 Method1 Method2 Method3 Method4 Method5

8 Contoh Program //Program C++ - pewarisan ganda #include const int LEN = 80; class student{ private : char school[LEN]; char degree[LEN]; public : void getedu(){ cout << “ \nEnter name of school or university : “; cin >> school; cout << “\nEnter highest degree earned\n”; cout << “(Highschool, Bachelor’s, Master’s, PhD): “; cin >> degree; }

9 void putedu(){ cout << “\nSchool or Unversity: “ << school; cout << “Highest degree earned: “ << degree; } }; class employee{ private: char name[LEN]; unsigned long number; public: void getdata(){ cout << “\nEnter Last name: “; cin >> name; cout << “\nEnter number: “; cin >> number; }

10 void putdata(){ cout << “\n Name: “ << name; cout << “\n Number: “ << number; } }; class manager : private employee, private student{ private: char title[LEN]; double dues; public: void getdata(){ employee :: getdata(); cout > title; cout << “ \nEnter golf club dues : “ ; cin >> dues; student :: getedu(); }

11 void putdata (){ employee :: putdata(); cout << “ \nTitle : “; << title; cout << “ \nGolf club dues: “ << dues; student :: putedu(); } }; class scientist : public employee, public student{ private: int pubs; public: void getdata(){ employee::getdata(); cout > pubs; student :: getedu(); }

12 void putdata(){ employee :: putdata(); cout << “ \n# publications: “; << pubs; student :: putedu(); } }; class laborer : public employee{}; void main(){ manager m1, m2; scientist s1; laborer l1; cout << “\nEnter data for manager 1”; m1.getdata(); cout << “\nEnter data for manager 2”; m2.getdata(); cout << “\nEnter data for scientist 1”;

13 s1.getdata(); cout << “\nEnter data for laborer 1”; l1.getdata(); cout << “\nData on manager 1”; m1.putdata(); cout << “\nData on manager 2”; m2.putdata(); cout << “\nData on scientist 1”; s1.putdata(); cout << “\nData on laborer 1”; l1.putdata(); }

14 Contoh Program // Program C++ pewarisan berganda #include class KelasA { public: void info(){ cout << “Informasi kelas A” << endl; } }; Kerancuan pada pewarisan berganda

15 class KelasB { public: void info(){ cout << “Informasi kelas B” << endl; } }; class KelasC : public KelasA, public KelasB { // tidak terdapat anggota kelas }; void main(){ KelasC Anak; Anak.info(); // menimbulkan kerancuan // tidak menimbulkan kerancuan Anak.KelasA::info() Anak.KelasB::info() }

16 Penutup Untuk dapat Menghasilkan sebuah class hasil turunan (multiple inheritance) dari beberapa base class, mahasiswa membahas tugas pertemuan 16 no 1, 2, dan 3. (diskusikan dalam kelompok)