inheritance ( pewarisan )

25
Inheritance Inheritance (Pewarisan) (Pewarisan) Dosen Pengampu : Nur Iksan

Upload: boone

Post on 12-Jan-2016

157 views

Category:

Documents


19 download

DESCRIPTION

Inheritance ( Pewarisan ). Inheritance ( Pewarisan ). Inheritance: Suatu class dapat mewariskan atribut dan method kepada class lain (subclass), serta membentuk class hierarchy. Inheritance ( Pewarisan ). Reusability Top down: Being more specific Bottom Up: Find similiarity - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Inheritance  ( Pewarisan )

InheritanceInheritance (Pewarisan)(Pewarisan)

Dosen Pengampu : Nur Iksan

Page 2: Inheritance  ( Pewarisan )

Inheritance Inheritance (Pewarisan)(Pewarisan) Inheritance: Suatu class dapat mewariskan

atribut dan method kepada class lain (subclass), serta membentuk class hierarchy

Dosen Pengampu : Nur Iksan

Page 3: Inheritance  ( Pewarisan )

Inheritance Inheritance (Pewarisan)(Pewarisan)ReusabilityTop down:

Being more specific

Bottom Up:Find similiarity

Java Keyword:extends

Dosen Pengampu : Nur Iksan

Page 4: Inheritance  ( Pewarisan )

Inheritance Inheritance (Pewarisan)(Pewarisan)

Dosen Pengampu : Nur Iksan

Page 5: Inheritance  ( Pewarisan )

Inheritance Inheritance (Pewarisan)(Pewarisan)Di proses pewarisan terdapat 2 sebutan:SuperBisa disebut juga dengan induk.Misalnya class ORTU adalah super class yang mewarisi ke class ANAKNah, karena mewarisi berarti ORTU bertindak sebagai super classSubBisa disebut dengan anakMisalnya class ANAK diwarisi oleh class ORTUArtinya anak adalah sub class dari class ORTU (super class)

Dosen Pengampu : Nur Iksan

Page 6: Inheritance  ( Pewarisan )

Inheritance Inheritance (Pewarisan)(Pewarisan)Apa yang diwariskan?method-method, konstruktor- konstruktor, dan variabel-variabel

Dosen Pengampu : Nur Iksan

Page 7: Inheritance  ( Pewarisan )

Implementasi pada JavaImplementasi pada Javaclass ORTU mempunyai

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

Page 8: Inheritance  ( Pewarisan )

Keyword extendsKeyword extends

class <sub_class> extends <super_class> { <program>; }

Dosen Pengampu : Nur Iksan

class ANAK extends ORTU {

}

Page 9: Inheritance  ( Pewarisan )

Inheritance Inheritance (Pewarisan)(Pewarisan)

Dosen Pengampu : Nur Iksan

Page 10: Inheritance  ( Pewarisan )

Sepeda.javaSepeda.java

Dosen Pengampu : Nur Iksan

Page 11: Inheritance  ( Pewarisan )

Class SepedaGunung Class SepedaGunung Mewarisi Class SepedaMewarisi Class Sepeda

Dosen Pengampu : Nur Iksan

Page 12: Inheritance  ( Pewarisan )

Inheritance Inheritance (Pewarisan)(Pewarisan)

Dosen Pengampu : Nur Iksan

Bagaimana implementasi pada Java?

Method pada class Lingkaran menentukan luas lingkaran dengan rumus LL=3.14 x r x r

Method pada class Silinder menentukan volume silinder dengan rumus volumenya VL=3.14 x r x r x h

Page 13: Inheritance  ( Pewarisan )

LatihanLatihanBuat class MobilBMWyang merupakan

inherit dari class MobilLengkap Tambahkan method nontonTV() yang

menampilkan tulisan di layar:TV dihidupkanTV mencari channelTV menampilkan gambarBuat class MobilBMWBeraksi yang

memanggil method nontonTV, hidupkanMobil, matikanMobil, ubahGigi

Dosen Pengampu : Nur Iksan

Page 14: Inheritance  ( Pewarisan )

Pewarisan Jamak dan Pewarisan Jamak dan InterfaceInterface

Dosen Pengampu : Nur Iksan

Page 15: Inheritance  ( Pewarisan )

PendahuluanPendahuluanPewarisan 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

Page 16: Inheritance  ( Pewarisan )

Implementasi dalam JavaImplementasi 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

Page 17: Inheritance  ( Pewarisan )

InterfaceInterfaceInterface 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

Page 18: Inheritance  ( Pewarisan )

Interface DeclarationInterface Declaration

interface NamaInterface { interfaceBody

}

Dosen Pengampu : Nur Iksan

Page 19: Inheritance  ( Pewarisan )

InterfaceInterfaceInterface mendefinisikan suatu

protokol perilaku. Suatu kelas mengimplementasi

suatu interface ◦ Kelas tersebut akan melekat pada

perilaku yang didefinisikan interface.

Dosen Pengampu : Nur Iksan

Page 20: Inheritance  ( Pewarisan )

InterfaceInterface

Implementasi intarface:

Dosen Pengampu : Nur Iksan

Kelas implements interface { // isi kelas

}

Page 21: Inheritance  ( Pewarisan )

Pewarisan Jamak dalam Pewarisan Jamak dalam JavaJavaMenggunakan InterfaceKombinasi antara turunan satu

kelas dengan interface atau menggunakan interface sebagai kelas-kelas Induk.

Dosen Pengampu : Nur Iksan

Page 22: Inheritance  ( Pewarisan )

Pewarisan Jamak dalam Pewarisan Jamak dalam JavaJavaBagaimana mewujudkan dalam Java ?

Dosen Pengampu : Nur Iksan

Parent Other

ParentChild

Page 23: Inheritance  ( Pewarisan )

Pewarisan Jamak dalam Pewarisan Jamak dalam JavaJavaKombinasi antara turunan satu

kelas dengan interface

Dosen Pengampu : Nur Iksan

Parent Other

OtherChildParentChild

OtherInterface<<Interface>>

Page 24: Inheritance  ( Pewarisan )

Implementasi dalam Implementasi dalam JavaJava

Dosen Pengampu : Nur Iksan

class Parent{ private int val;

public Parent(int value ) {this.val = value;

} public int getValue() {

return this.val; } // some code omitted}

class Other{ private int val; public Other(int value) {

this.val = val; }

public void whatever() { System.out.println("whatever methods \n"); }

}

Page 25: Inheritance  ( Pewarisan )

Implementasi dalam Implementasi dalam JavaJavainterface OtherInterface{ void whatever();}

Dosen Pengampu : Nur Iksan

class OtherChild extends Other implements OtherInterface{ public OtherChild (int value){

super(value); } // others ..}

class ParentChild extends Parent implements OtherInterface{ public ParentChild(int val) {

super(val);child = new OtherChild(val);

} public void whatever() {

child.whatever(); }

private OtherInterface child;}