INHERITANCE / PEWARISAN

Slides:



Advertisements
Presentasi serupa
PERTEMUAN 4 PEMROGRAMAN API OOP Concept mudafiqriyan.com.
Advertisements

Inheritance (pewarisan)
Nur Hayatin, S.ST Jurusan Teknik Informatika Universitas Muhammadiyah Malang Sem Genap 2010.
ABSTRACT CLASS Imam Fahrur Rozi.
Inheritance.
INHERITANCE.
KelompoK 4 Agus Dwi Prayogo / 2928 Rian Chikita / 2942
Inheritance (Pewarisan)
1.Polymorphism Polymorphism adalah konsep yang memungkinkan mendefinisikan metod pada class anak (sub class) yang memiliki definisi sama dengan metod.
7 Rekayasa Sistem Konsep Utama OOP Dedy Alamsyah, S.Kom.
PERANCANGAN BERORIENTASI OBJEK
Inheritance (Pewarisan)
ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM
ALGORITMA DAN PEMROGRAMAN 2C MATERI MINGGU KE-2 Pengenalan Teknik-teknik Bahasa Pemrograman Henny Medyawati.
Pertemuan : Object Oriented Programming
OBJECT ORIENTED PROGRAMMING YANES HARDIANTO SUI Politeknik Manufaktur Astra 2011.
Inheritance (Pewarisan)
Inheritance Konsep Inheritance Protected Member
Inheritance Matakuliah : T0984 / Algoritma dan Metode Object Oriented Programming II Pertemuan : 4 Tahun : 2008 Versi : 1/0.
Pemrograman Berorientasi Obyek (PBO)
1 Pertemuan 9 Inheritance Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
INHERITANCE (Oleh : Nur Hayatin, S.ST)
#14 PENGANTAR OOP STIKOM Konsep Encapsulation Inheritance Polymorphism
Try, Catch, Finally Throws
Pertemuan 6 PEWARISAN AND POLYMORPHISM
FONDASI PEMROGRAMAN & STRUKTUR DATA #8
Inheritance dan Kata Kunci static
Inheritance (Pewarisan)
Encapsulation, Inheritance, Polymorphism
Outline: Pewarisan/Inheritance Polymorphism
Pemrograman Berorientasi Objek
Object Oriented Programming
Inheritance Pertemuan 8
Pewarisan (Inheritance)
D3 TKJ Teknik Elektro Unsoed 2007
PEMOGRAMAN Kelas dan Perwarisan.
PEWARISAN (Inheritance)
Pemrograman Berorientasi Objek
Object Oriented Programming
UML Class Diagram.
Inheritance.
Object Oriented Programming
Inheritance (Turunan)
(OBJECT ORIENTED PROGRAMMING) Pem rograman berorientasi objek
Inheritance (Pewarisan)
INHERITANCE SUSSI.
(OBJECT ORIENTED PROGRAMMING) Pem rograman berorientasi objek
Pewarisan (Inheritance)
INTRODUCTION.
Encapsulation / Visibility, Getter Setter, Pewarisan, Overloading dan Overriding PBO.
Visibility, Getter Setter, Pewarisan, Overloading dan Overriding
Visibility, Getter Setter, Pewarisan, Overloading dan Overriding
Subclassing and Inheritance
Pemrograman Berbasis Objek
Pemrograman Berorientasi Objek
Polimorphism Dosen Pengampu : Nur Iksan.
PEWARISAN Kelompok : Alim Mutohidin ( )
Visualisasi class dan Relationship Bag. 2
Encapsulation / Visibility, Getter Setter, Pewarisan, Overloading dan Overriding Pemrograman.
UML Class Diagram.
KelompoK 4 Agus Dwi Prayogo / 2928 Rian Chikita / 2942
TEORI DAN KONSEP PEMROGRAMAN BERBASIS OBJECT (OOP)
Pertemuan 5 Inheritance
(OBJECT ORIENTED PROGRAMMING) Pem rograman berorientasi objek
(OBJECT ORIENTED PROGRAMMING) Pem rograman berorientasi objek
Perkembangan Teknik Pemrograman
Encapsulation / Visibility, Getter Setter, Pewarisan, Overloading dan Overriding PBO.
Dian Wahyuningsih, S.Kom., MMSI
Pemrograman Berorientasi Obyek (PBO) Disusun oleh : Khairan Marzuki, M.Kom Fakultas Teknik dan Kesehatan, Universitas Bumigora.
FONDASI PEMROGRAMAN & STRUKTUR DATA #7
Transcript presentasi:

INHERITANCE / PEWARISAN 01 PERTEMUAN 14 INHERITANCE / PEWARISAN

Konsep Inheritance Secara bebas Inheritance di terjemahkan sebahagai pewarisan. Yaitu sebuah konsep dimana kita bisa membuat sebuah class baru dengan mengembangkan kelas yang pernah dibuat sebelumnya. Metode OOP memungkinkan kita memperoleh seluruh data dari class induk (base-class) untuk diberikan kepada class anak (derived-class) tanpa harus melakukan copy-and-paste seluruh kode base-class. Contoh : class Silinder seperti digambarkan dibawah ini : Catatan: Selain tinggi silinder (t), silinder juga memiliki jari-jari (r) lingkaran pada kedua ujungnya. r t

Berdasarkan gambar tersebut bisa dibuat bagan untuk class Silinder dengan mencantumkan seluruh data dan metodenya sebagai berikut: Silinder double jariJari double tinggi void setJariJari(double) void setTinggi(double) double getJariJari() double getTinggi() double hitungLuas() double hitungVolume()

Kemudian kita coba membandingkan class Lingkaran terdahulu dengan class Silinder yang akan kita buat : Silinder Lingkaran double jariJari double tinggi double jariJari void setJariJari(double) double getJariJari() double hitungLuas() double hitungkeliling() void setJariJari(double) void setTinggi(double) double getJariJari() double getTinggi() double hitungLuas() double hitungVolume() Dari perbandingan tersebut, terdapat data dan method yang sama pada kedua class. Kita juga bisa melihat bahwa class Silinder merupakan superset dari class Lingkaran. Metode OOP mengijinkan kita membuang data dan method dari class superset yang ada pada kelas subset-nya. Sehingga menjadi sbb:

Lingkaran Silinder double jariJari double tinggi void setJariJari(double) double getJariJari() double hitungLuas() double hitungkeliling() void setTinggi(double) double getTinggi() double hitungLuas() double hitungVolume() Catatan: Tidak semua method class Lingkaran kita hilangkan pada class Silinder. Contoh method hitungLuas() tetap digunakan, hanya saja isinya berbeda, karena menghitung luas Lingkaran tentu berbeda dengan menghitung luas Silinder, pada class silinder kita menambahkan method hitungVolume() karena bangunan Geometris Silinder adalah 3-Dimensi. Sedangkan untuk method hitungkeliling(), meski pada class Silindersudah kita buang, namun user tetap bisa menggunakannya karena method ini secara otomatis diwariskan ke class Silinder. Pada hal kita tahu Silinder tidak mempunyai keliling.

void setJariJari(double) double getJariJari() double hitungLuas() Lingkaran double jariJari void setJariJari(double) double getJariJari() double hitungLuas() double hitungkeliling() Kedua struktur class ini bisa digambarkan secara hirarki, dengan menggunakan model Unified Modelling Language (UML) dari Rumbaugh dkk: Silinder double tinggi void setTinggi(double) double getTinggi() double hitungLuas() double hitungVolume()

Inheritance Software reusability Menciptakan class baru dari class yang sudah ada - Menggunakan data dan behaviors (tingkah laku/method) dari class yang sudah ada - Ditambahkan dengan kemampuan yg lain Subclass extends superclass - Subclass Lebih khusus / spesialisasi Behaviors/method diturunkan dari superclass dapat diubah Behaviors (method) tambahan

Superclasses and subclasses Object suatu class “is an” object dari class yang lain Contoh: Mahasiswa adalah Orang. Class Mahasiswa diturunkan (inherits) dari class Orang Orang: superclass Mahasiswa: subclass Superclass merepresentasikan kumpulan banyak objek yang lebih besar daripada kumpulan objeknya subclass Contoh: superclass: Kendaraan Mobil, truk, perahu, sepeda, … subclass: Mobil Lebih kecil, kendaraan yg lebih spesifik

Inheritance hierarchy Inheritance relationships: tree-like hierarchy structure Tiap class bisa menjadi superclass Supply data/behaviors ke class lain ATAU subclass Inherit (mewarisi) data/behaviors dari class lain

Fig. 9.2 Inheritance hierarchy for university CommunityMembers. Employee Student Staff Faculty Administrator Teacher Alumnus Fig. 9.2 Inheritance hierarchy for university CommunityMembers.

ThreeDimensionalShape TwoDimensionalShape ThreeDimensionalShape Circle Square Triangle Sphere Cube Tetrahedron Fig. 9.3 Inheritance hierarchy for Shapes.

PENTING !!! Cara membuat sub class class nm_KelasTurunan extends nm_KelasDasar { <tubuh klas> }

Pewarisan data menurut hak aksesnya ATRIBUTE AKSES DIWARISKAN PADA PUBLIC Kelas Turunan PROTECTED Kelas Turunan PRIVATE Tidak ada TANPA ATRIBUTE Kelas turunan dalam satu paket