Anda di halaman 1dari 22

INHERITANCE

(PEWARISAN)

for TKJ PNUP


DEFINISI INHERITANCE

• Inheritance adalah salah satu fitur utama dari OOP.


• Inheritance adalah proses dimana sebuah class mendapatkan properti (atribut + metode) dari
class lain.
• Dengan inheritance, sebuah class dapat dikembangkan menjadi class baru yang lebih
lengkap/baik.
• Class yang menurunkan propertinya disebut sebagai superclass (base class atau parent class) dan
class yang menjadi turunan disebut sebagai subclass(derived class , extended class , atau child
class).
• Inheritance (pada Java) dilakukan dengan keyword extends .
• Class paling atas adalah class bernama Object.

2
KONSEP INHERITANCE
Kelas A
(Super Class)
variabelInstanX
Dengan sendirinya,
metodeP()
metodeR() KelasB mewarisi
semua metode dan
variabel instan milik
Kelas B KelasA, yang tidak
(Sub Class)
bersifat private.
variabelInstanX

metodeT() metode tambahan


Binatang
CONTOH INHERITANCE -nama

+setNama(in n: String)
+getNama(): String
+bersuara()

Burung Mamalia

#bertelur() #melahirkan()
+terbang() +berjalan()

Merpati Kakatua Kuda Sapi

+bersuara(in s: String) +berjalan() +bersuara()


+berlari()
LANGKAH #1: Konsep:
MEMBUAT CLASS Setiap Binatang mempunyai kesamaan, yaitu
mempunyai nama dan dapat bersuara.
BINATANG

5
CLASS BINATANG
MENGUJI CLASS BINATANG

output

7
LANGKAH #2: Konsep:
Burung adalah Binatang (mempunyai nama dan
MEMBUAT bersuara) yang dapat bertelur dan terbang.
Metode bertelur dan terbang adalah metode
CLASS BURUNG tambahan yang dapat dilakukan oleh class
Burung.

8
CLASS BURUNG
MENGUJI CLASS BURUNG

• Metode setNama() dapat


langsung digunakan oleh class
Burung, padahal tidak dibuat.
Mengapa?
• Karena metode tersebut adalah
metode yang terdapat pada
super class (class Binatang),
sehingga dapat langsung
digunakan pada sub class (class
Burung)

10
LANGKAH #3: Konsep:
MEMBUAT Mamalia adalah Binatang (mempunyai nama dan
bersuara) yang dapat melahirkan dan berjalan.
Metode melahirkan dan berjalan adalah metode
CLASS MAMALIA tambahan yang dapat dilakukan oleh class Mamalia.

1
CLASS MAMALIA
LANGKAH #4: Konsep:
MEMBUAT Asumsi Merpati adalah Burung pada
umumnya. Oleh karena itu, tidak
CLASS MERPATI memiliki metode tambahan

1
CLASS MERPATI

14
LANGKAH #5: Konsep:
Kakatua adalah Burung. Tetapi cara bersuara burung
MEMBUAT kakatua dapat meniru ucapan manusia. Oleh karena
itu metode bersuara yang diturunkan dari
superclassnya harus dioverride(diganti) sehingga
CLASS KAKATUA menghasilkan operasi/perilaku yang berbeda dari
superclassnya.

1
CLASS KAKATUA

16
LANGKAH #6: Konsep:
Kuda adalah Mamalia yang dapat berjalan
MEMBUAT dan berlari. Bedanya ketika kuda berjalan
mengeluarkan suara “Tuk tik tak tik tuk tik
CLASS KUDA tak”, dan kelebihan lain dari kuda adalah
dapat berlari.

1
CLASS KUDA

18
LANGKAH #7: Konsep:
MEMBUAT Sapi adalah Mamalia (biasa) yang kalau bersuara
mengeluarkan suara “Moooooooooo”. Karena itu
maka metode bersuara di class Sapi akan
CLASS SAPI mengoverride fungsi bersuara dari class Binatang.

1
CLASS SAPI

20
LANGKAH #8:
MENGERJAKAN
TUGAS

2
TUGAS

1. Ujilah fitur inheritance dari class Merpati, Kakatua, Kuda, dan Sapi
2. Buatlah 1 sub class masing-masing dari class Burung dan class Mamalia (yang berbeda
dengan contoh).
3. Ujilah fitur inheritance dari sub class yang dibuat
4. Buatlah analisis dan kesimpulan

22

Anda mungkin juga menyukai