1 Pertemuan 9 Inheritance Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.

Slides:



Advertisements
Presentasi serupa
Fungsi Friend Dalam bahasa C++ kita dapat membuat suatu fungsi yang berada di luar kelas (class) dan dapat meng-ak-ses bagian private suatu kelas. Fungsi.
Advertisements

Inheritance (pewarisan)
Modul 14 – Hendi Hermawan - 1
PEWARISAN ( INHERITANCE)
Object Oriented Programming
Pemrograman Berbasis Objek
BAB III – CLASS (1) DIKTAT PBO Oleh: Adam Mukharil B. S.Kom.
di OBJECT ORIENTED PROGRAMMING [OOP] Oleh H. SUMIJAN, Ir, M.Sc
7 Rekayasa Sistem Konsep Utama OOP Dedy Alamsyah, S.Kom.
Konsep Pemrograman Berorientasi Objek
Pertemuan 8 Pemrograman Berbasis Obyek Oleh Tita Karlita
Departemen Ilmu Komputer FMIPA IPB 2013
Class, Inheritance, Encapsulation & Interface
ARRAY OF STRUCT Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
Class.
Pemrograman Berorientasi Obyek dengan JAVA Interface
Inheritance Nana Ramadijanti Laboratorium Computer Vision Politeknik Elekltronika Negeri Surabaya PENS-ITS 2009.
Pertemuan 7 inheritance.
STRUKTUR DATA Structure.
1 Pertemuan 14 Operator Overloading 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.
Teknik Pemrograman Terstruktur Linked lis & Inheritance 1/12 Pointer (Lanjutan…) Pemrograman Berorientasi Objek.
Matakuliah : T0456 ~ Algoritma dan Metode Object Oriented Programming
CLASS, OBJECT METHOD, PROPERTIES Object Oriented Programming
Inheritance Matakuliah : T0984 / Algoritma dan Metode Object Oriented Programming II Pertemuan : 4 Tahun : 2008 Versi : 1/0.
Pemrograman Berorientasi Obyek (PBO)
#14 PENGANTAR OOP STIKOM Konsep Encapsulation Inheritance Polymorphism
Struct 2nd Part.
Pertemuan 6 PEWARISAN AND POLYMORPHISM
1 Pertemuan 18 Template Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
Matakuliah : T0044/Pemrograman Berorientasi Obyek
1 Pertemuan 5 Encapsulation Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
Pertemuan 10 Constructor dan Destructor
Pertemuan 5 Balok Keran dan Balok Konsol
1 Pertemuan 16 Multiple Inheritance Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
Pemrograman Berorientasi Obyek (PBO)
1 Pertemuan 10 Pemrograman Berorientasi Objek Matakuliah: >/ > Tahun: > Versi: >
FONDASI PEMROGRAMAN & STRUKTUR DATA #8
Pertemuan 10 Inheritance Lanjutan
Outline: Pewarisan/Inheritance Polymorphism
Object Oriented Programming
Inheritance Pertemuan 8
Pewarisan Disusun Oleh: Reza Budiawan Untuk:
Pertemuan 1 KONSEP PEMROGRAMAN BERORIENTASI OBJEK
Constructor dan Destructor Pertemuan 17
INHERITANCE (PEWARISAN)
Inheritance Pertemuan 21
Class dan Objek Lanjutan Pertemuan 18
Pertemuan 9 Pemrograman Berbasikan Objek
Struct.
Pemrograman Berorientsi Objek Pertemuan 15
Inheritance lanjutan Pertemuan 22
Inheritance.
Object Oriented Programming
Inheritance (Turunan)
13. Pewarisan S. Indriani L, M.T 12. Pewarisan.
Matakuliah : M0074/PROGRAMMING II Tahun : 2005 Versi : 1/0
Object Oriented Programming
Pemrograman Berorientasi Object
Pemrograman Berorientasi Object
PEWARISAN Pemograman Berorientasi Objek SI Semester III
(Object Oriented Programming)
Pemrograman Berbasis Objek
@kovazzevic | SMKN 24 Jakarta
Pertemuan 5 Inheritance
Pemrograman Berorientasi Obyek (PBO) Disusun oleh : Khairan Marzuki, M.Kom Fakultas Teknik dan Kesehatan, Universitas Bumigora.
Transcript presentasi:

1 Pertemuan 9 Inheritance Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0

2 Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : Menghasilkan program C++ dengan konsep Inheritance

3 Outline Materi Pendahuluan konsep Inheritance Deklarasi derived class Jenis Akses Derived Class Single Inheritance

4 Pendahuluan konsep Inheritance Pewarisan (Inherintance) adalah proses pembentukan satu klas baru (derived class) dari klas lainnya (based class) Proses ini memberikan keuntungan dalam daur ulang program (reusability). C++ menjamin bahwa semua klas turunan akan diinisial dan dilakukan proses clean-up dengan benar melalui mekanisme constructor dan destructor. Klas turunan (derived class) mewarisi semua kemampuan yang dimiliki oleh klas induk (based class), baik data members dan methods yang dideklarasikan dengan akses public atau protected. Hubungan antar klas turunan dan klas induknya akan membentuk suatu hirarki klas. Dalam OOP, perancangan hirarki klas merupakan hal yang utama.

5 Beberapa bentuk hirarki klas Single Inheritance Multiple Inheritance

6 hirarki klas Pada perancangan hirarki klas, klas induk (based class) merupakan klas yang mempunyai sifat (property) yang paling umum atau yang harus dimiliki oleh seluruh klas turunannya (derived class). Sedangkan sifat yang khusus dimiliki oleh klas-klas turunannya, dimana sifat-sifat khusus tersebut digunakan untuk meningkatkan sifat atau kemampuan dari klas induknya.

7 C++ Syntax for Inheritance class Nama_Turunan : jenis_akses Nama_Induk { } Contoh : class Barang { protected: int A; }; class Meja : public Barang { protected: int B; }; Nama_Turunan Jenis_akses

8 Akses member Base class dari Derived class Anggota klas induk dapat diakses oleh anggota klas turunan apabila jenis akses dari anggota klas induk adalah public atau protected. Anggota protected dari klas induk dapat diakses oleh klas turunan seolah-olah anggota tersebut dideklarasikan dalam definisi klas turunan yang bersangkutan. Anggota protected suatu klas tetap tidak dapat diakses oleh fungsi / klas lainnya dalam program yang tidak menjadi anggota klas turunan tersebut.

9 Jenis Akses Derived class class Nama_Turunan : jenis_akses Nama_Induk { } Jenis akses dari definisi klas turunan tersebut di atas dapat berupa public/ protected/private.

10 Program1 - Single Inheritance #include class Mahasiswa {private: char NIM[11], Nama[40]; public: void Masuk_Mhs () { cout > NIM; cout << “Masukkan Nama : “; gets( Nama ); } void Tampil_Mhs () {cout << “NIM = “ << NIM << endl; cout << “Nama = “ << Nama < endl; } }; class Mata_Kuliah : public Mahasiswa {protected: char Kd_Kuliah[6], Nm_MataKuliah[30]; public: void Masuk_Kuliah () { cout > Kd_Kuliah; cout << “Masukkan Nama Mata Kuliah : “; gets( Nm_MataKuliah ); } void Tampil_Kuliah () { cout << “Kode Kuliah : “ << Kd_Kuliah << endl; cout << “Nama Mata Kuliah : “ << Nm_MataKuliah << endl; } }; void main( ) { Mata_Kuliah M1; M1.Masuk_Mhs(); M1.Masuk_Kuliah(); M1.Tampil_Mhs(); M1.Tampil_Kuliah(); getch(); }

11 Program 2 - single Inheritance #include class Pegawai { protected: char NIP[10], Nama[30]; public: void Masuk_Data () { cout << “Masukkan Nomor Induk Pegawai : “; cin >> NIP; cout << “Masukkan Nama Pegawai : “; cin >> Nama; } void Tampil_Data () { cout << “Nomor Induk Pegawai = “ << NIP << endl; cout << “Nama Pegawai = “ << Nama << endl; } }; class Manager : public Pegawai {protected: char Titel[20], Telpon[20]; public: void Masuk_Data () { Pegawai :: Masuk_Data(); cout << “Masukkan titel dari manager : “; cin >> Titel; cout<< “Masukkan No Telpon : “; cin >> Telpon; } void Tampil_Data () { Pegawai :: Tampil_Data(); cout << “Titel dari manager : “ << Titel << endl; cout << “No Telpon manager : “ << Telpon << endl; } };

12 Program2 (Lanjutan) class Peneliti : public Pegawai {protected: int Publikasi; public: void Masuk_Data () { Pegawai :: Masuk_Data(); cout << “Masukkan No Publikasi : “; cin >> Publikasi; } void Tampil_Data () { Pegawai :: Tampil_Data(); cout << “No Publikasi Peneliti : “ << Publikasi << endl; } }; class Satpam : public Pegawai { }; void main () { Manager m1, m2; Peneliti p1; Satpam s1; // Bagian Entry data cout << “\nMasukkan data untuk manager 1 : “; m1.Masuk_Data(); cout << “\nMasukkan data untuk manager 2 : “; m2.Masuk_Data(); cout << “\nMasukkan data untuk peneliti 1 : “; p1.Masuk_Data(); cout << “\nMasukkan data untuk satpam 1 : “; s1.Masuk_Data(); // Bagian Display data cout << “\nData dari manager 1 : “; m1.Tampil_Data(); cout << “\nData dari manager 2 : “; m2.Tampil_Data(); cout << “\nData dari peneliti 1 : “; p1.Tampil_Data(); cout << “\nData dari satpam 1 : “; s1.Tampil_Data(); getch(); }

13 Tugas 9 Tugas 9A: Mahasiswa membuat ringkasan point point penting dalam konsep inheritance sesuai petunjuk dosen Tugas 9B: Mahasiswa Mencari output program dengan inheritance Tugas 9C: Mahasiswa membuat program sederhana dengan Single Inheritance