Inheritance Pewarisan Dosen Pengampu Nur Iksan Inheritance Pewarisan

  • Slides: 25
Download presentation
Inheritance (Pewarisan) Dosen Pengampu : Nur Iksan

Inheritance (Pewarisan) Dosen Pengampu : Nur Iksan

Inheritance (Pewarisan) � Inheritance: Suatu class dapat mewariskan atribut dan method kepada class lain

Inheritance (Pewarisan) � Inheritance: Suatu class dapat mewariskan atribut dan method kepada class lain (subclass), serta membentuk class hierarchy Dosen Pengampu : Nur Iksan

Inheritance (Pewarisan) �Reusability �Top down: Being more specific �Bottom Up: Find similiarity �Java Keyword:

Inheritance (Pewarisan) �Reusability �Top down: Being more specific �Bottom Up: Find similiarity �Java Keyword: extends Dosen Pengampu : Nur Iksan

Inheritance (Pewarisan) Dosen Pengampu : Nur Iksan

Inheritance (Pewarisan) Dosen Pengampu : Nur Iksan

Inheritance (Pewarisan) Di proses pewarisan terdapat 2 sebutan: � Super Bisa disebut juga dengan

Inheritance (Pewarisan) Di proses pewarisan terdapat 2 sebutan: � Super Bisa disebut juga dengan induk. Misalnya class ORTU adalah super class yang mewarisi ke class ANAK Nah, karena mewarisi berarti ORTU bertindak sebagai super class � Sub Bisa disebut dengan anak Misalnya class ANAK diwarisi oleh class ORTU Artinya anak adalah sub class dari class ORTU (super class) Dosen Pengampu : Nur Iksan

Inheritance (Pewarisan) Apa yang diwariskan? �method-method, �konstruktor- konstruktor, �dan variabel-variabel Dosen Pengampu : Nur

Inheritance (Pewarisan) Apa yang diwariskan? �method-method, �konstruktor- konstruktor, �dan variabel-variabel Dosen Pengampu : Nur Iksan

Implementasi pada Java �class ORTU mempunyai variabel dan method dan diturunkan ke sub classnya

Implementasi pada Java �class ORTU mempunyai variabel dan method dan diturunkan ke sub classnya (misal: class ANAK). Berarti class ANAK mempunyai semua variabel dan method yang dimiliki oleh class ORTU Dosen Pengampu : Nur Iksan

Keyword extends class <sub_class> extends <super_class> { <program>; } class ANAK extends ORTU {

Keyword extends class <sub_class> extends <super_class> { <program>; } class ANAK extends ORTU { } Dosen Pengampu : Nur Iksan

Inheritance (Pewarisan) Dosen Pengampu : Nur Iksan

Inheritance (Pewarisan) Dosen Pengampu : Nur Iksan

Sepeda. java Dosen Pengampu : Nur Iksan

Sepeda. java Dosen Pengampu : Nur Iksan

Class Sepeda. Gunung Mewarisi Class Sepeda Dosen Pengampu : Nur Iksan

Class Sepeda. Gunung Mewarisi Class Sepeda Dosen Pengampu : Nur Iksan

Inheritance (Pewarisan) Bagaimana implementasi pada Java? Method pada class Lingkaran menentukan luas lingkaran dengan

Inheritance (Pewarisan) Bagaimana implementasi pada Java? Method pada class Lingkaran menentukan luas lingkaran dengan rumus LL=3. 14 x r Method pada class Silinder menentukan volume silinder dengan rumus volumenya VL=3. 14 x r x h Dosen Pengampu : Nur Iksan

Latihan �Buat class Mobil. BMWyang merupakan inherit dari class Mobil. Lengkap �Tambahkan method nonton.

Latihan �Buat class Mobil. BMWyang merupakan inherit dari class Mobil. Lengkap �Tambahkan method nonton. TV() yang menampilkan tulisan di layar: �TV dihidupkan �TV mencari channel �TV menampilkan gambar �Buat class Mobil. BMWBeraksi yang memanggil method nonton. TV, hidupkan. Mobil, matikan. Mobil, ubah. Gigi Dosen Pengampu : Nur Iksan

Pewarisan Jamak dan Interface Dosen Pengampu : Nur Iksan

Pewarisan Jamak dan Interface Dosen Pengampu : Nur Iksan

Pendahuluan � Pewarisan awalnya dipandang sebagai mekanisme untuk sharing kode (fungsi) dan data (atribut)

Pendahuluan � Pewarisan awalnya dipandang sebagai mekanisme untuk sharing kode (fungsi) dan data (atribut) � Pewarisan Jamak (multiple inheritance) dipandang sebagai mekanisme untuk membentuk suatu sub kelas dari beberapa implementasi super kelas Dosen Pengampu : Nur Iksan

Implementasi dalam Java � Java TIDAK mendukung pewarisan Jamak � Java HANYA memiliki pewarisan

Implementasi dalam Java � Java TIDAK mendukung pewarisan Jamak � Java HANYA memiliki pewarisan tunggal ◦ Suatu kelas turunan hanya memiliki satu kelas induk � Lalu Bagaimana perwujudannya dalam Java ? � Java mewujudkannya dengan menggunakan Interface ◦ Multiple interface inheritance BUKAN multiple implementation inheritance Dosen Pengampu : Nur Iksan

Interface �Interface digunakan apabila kita ingin menentukan apa yang harus dilakukan oleh suatu class

Interface �Interface digunakan apabila kita ingin menentukan apa yang harus dilakukan oleh suatu class tapi tidak menentukan bagaimana cara untuk melakukannya �Interface kumpulan deklarasi fungsi (tanpa implementasi). Interface juga dapat mendeklarasikan konstanta �Interface sebenarnya sama dengan class, tapi hanya memiliki deklarasi method tanpa implementasi Dosen Pengampu : Nur Iksan

Interface Declaration interface Nama. Interface { interface. Body } Dosen Pengampu : Nur Iksan

Interface Declaration interface Nama. Interface { interface. Body } Dosen Pengampu : Nur Iksan

Interface � Interface mendefinisikan suatu protokol perilaku. � Suatu kelas mengimplementasi suatu interface ◦

Interface � Interface mendefinisikan suatu protokol perilaku. � Suatu kelas mengimplementasi suatu interface ◦ Kelas tersebut akan melekat pada perilaku yang didefinisikan interface. Dosen Pengampu : Nur Iksan

Interface Implementasi intarface: Kelas implements interface { // isi kelas } Dosen Pengampu :

Interface Implementasi intarface: Kelas implements interface { // isi kelas } Dosen Pengampu : Nur Iksan

Pewarisan Jamak dalam Java � Menggunakan Interface � Kombinasi antara turunan satu kelas dengan

Pewarisan Jamak dalam Java � Menggunakan Interface � Kombinasi antara turunan satu kelas dengan interface atau menggunakan interface sebagai kelas-kelas Induk. Dosen Pengampu : Nur Iksan

Pewarisan Jamak dalam Java �Bagaimana mewujudkan dalam Java ? Dosen Pengampu : Nur Iksan

Pewarisan Jamak dalam Java �Bagaimana mewujudkan dalam Java ? Dosen Pengampu : Nur Iksan

Pewarisan Jamak dalam Java �Kombinasi antara turunan satu kelas dengan interface Dosen Pengampu :

Pewarisan Jamak dalam Java �Kombinasi antara turunan satu kelas dengan interface Dosen Pengampu : Nur Iksan

Implementasi dalam Java class Parent { private int val; class Other { private int

Implementasi dalam Java class Parent { private int val; class Other { private int val; public Other(int value) { this. val = val; } public Parent(int value ) { public void whatever() this. val = value; { } System. out. println("whatever public int get. Value() methods n"); { } return this. val; } } // some code omitted } Dosen Pengampu : Nur Iksan

Implementasi dalam Java class Other. Child extends Other implements Other. Interface { { public

Implementasi dalam Java class Other. Child extends Other implements Other. Interface { { public Other. Child (int value){ void whatever(); super(value); } } // others. . } class Parent. Child extends Parent implements Other. Interface { public Parent. Child(int val) { super(val); child = new Other. Child(val); } public void whatever() { child. whatever(); } private Other. Interface child; } Dosen Pengampu : Nur Iksan interface Other. Interface