Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

01 PERTEMUAN 14 INHERITANCE / PEWARISAN. t r Catatan: Selain tinggi silinder (t), silinder juga memiliki jari-jari (r) lingkaran pada kedua ujungnya.

Presentasi serupa


Presentasi berjudul: "01 PERTEMUAN 14 INHERITANCE / PEWARISAN. t r Catatan: Selain tinggi silinder (t), silinder juga memiliki jari-jari (r) lingkaran pada kedua ujungnya."— Transcript presentasi:

1 01 PERTEMUAN 14 INHERITANCE / PEWARISAN

2 t r Catatan: Selain tinggi silinder (t), silinder juga memiliki jari-jari (r) lingkaran pada kedua ujungnya. 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 :

3 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()

4 Lingkaran double jariJari void setJariJari(double) double getJariJari() double hitungLuas() double hitungkeliling() 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 : 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:

5 Lingkaran double jariJari void setJariJari(double) double getJariJari() double hitungLuas() double hitungkeliling() Silinder double tinggi 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.

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

7 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 Inheritance

8 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

9 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

10 Fig. 9.2Inheritance hierarchy for university CommunityMember s. CommunityMember EmployeeStudent StaffFaculty AdministratorTeacher Alumnus

11 Fig. 9.3Inheritance hierarchy for Shapes. Shape TwoDimensionalShapeThreeDimensionalShape CircleSquareTriangleSphereCubeTetrahedron

12 PENTING !!! Cara membuat sub class class nm_KelasTurunan extends nm_KelasDasar { }

13 Pewarisan data menurut hak aksesnya ATRIBUTE AKSESDIWARISKAN PADA PUBLICKelas Turunan PROTECTEDKelas Turunan PRIVATETidak ada TANPA ATRIBUTEKelas turunan dalam satu paket


Download ppt "01 PERTEMUAN 14 INHERITANCE / PEWARISAN. t r Catatan: Selain tinggi silinder (t), silinder juga memiliki jari-jari (r) lingkaran pada kedua ujungnya."

Presentasi serupa


Iklan oleh Google