SlideShare a Scribd company logo
1 of 13
Download to read offline
TI009 – Pemrograman Berorientasi Objek
LECTURE NOTE
Inheritance
Debby Ummul Hidayah, S.Kom., M.MSI
debbyummul@gmail.com
TI009 – Pemrograman Berorientasi Objek
LEARNING OUTCOMES
Mahasiswa mampu memahami dan menerapkan penggunaan inheritance.
OUTLINE MATERI
Inheritance:
- Single inheritance
- Multilevel inheritance
- Access control
- Konstruktor tidak diwariskan
- Super keyword
TI009 – Pemrograman Berorientasi Objek
ISI
1. Mengenal Inheritance
Dalam konsep pemrograman berorientasi objek, inheritance yang memungkinkan
hubungan di mana ada class yang mewarisi semua attribute dan method dari class lain.
Class baru yang lebih spesifik disebut subclass atau class turunan, sedangkan class yang
diturunkan disebut superclass.
Untuk menguji inheritance, cara lain yang dapat digunakan adalah menggunakan
rumus “IS A”. Kekurangan metode tersebut adalah hanya berlaku searah (dari subclass
superclass).
Contoh:
- Mamalia (mempunyai daun telinga, beranak, menyusui). Contoh: anjing, kucing,
marmut. Cara mengujinya adalah: anjing IS A mamalia.
- Kendaraan (mempunyai kemudi). Contoh: mobil, motor, pesawat. Cara mengujinya
adalah: mobil IS A kendaraan
2. Latihan 1
Kita akan menggunakan kata kunci extends. Kata kunci ini digunakan untuk
membuat class turunan. Strukturnya yaitu:
public class [nama subclass] extends [nama super class)] {}
Contoh: public class Kamus extends Buku {}
Sekarang kita coba membuat program yang menerapkan prinsip inheritance
tersebut.
a. Buatlah program yang akan menjadi super class
TI009 – Pemrograman Berorientasi Objek
b. Buatlah program yang akan menjadi sub class dengan menggunakan kata kunci
extends
c. Buatlah class testernya
Source code-nya:
package latihaninheritance1;
//class ini bertindak sebagai super class
class A {
int x;
int y;
void getNilai() {
System.out.println("nilai x: " + x + " nilai y:" + y);
}
}
//class ini bertindak sebagai subclass
class B extends A {
int z;
void getJumlah() {
System.out.println("Jumlah: " + (x + y + z));
}
}
TI009 – Pemrograman Berorientasi Objek
//class ini akan digunakan sebagai class tester
public class LatihanInheritance1 {
public static void main(String[] args) {
// TODO code application logic here
A ortu = new A();
B anak = new B();
System.out.println("-----Super Class-----");
ortu.x = 43;
ortu.y = 33;
ortu.getNilai();
System.out.println("---------------------");
System.out.println(" ");
System.out.println("------Subclass-------");
anak.x = 5;
anak.y = 23;
anak.getNilai();
anak.z = 25;
anak.getJumlah();
}
}
Keterangan:
Dari kode program diatas, kita dapat melihat bahwa bahwa method getNilai() muncul
pada class B. Padahal kita tidak melihat adanya method getNilai() di class B. Hal ini
membuktikan bahwa terdapat proses inheritance dari class A ke class B. Hubungan ini
TI009 – Pemrograman Berorientasi Objek
bersifat generalization dimana ClassChild mempunyai semua sifat dari ClassParent.
Oleh karena itu, pada ClassChild cukup ditambahkan bagian yang memang merupakan
spesifik milik ClassChild.
3. Latihan 2
Pada program diatas, setiap atribut yang digunakan bertipe default. Dengan kata lain,
atribut pada program diatas tidak terenkapsulasi sehingga dengan mudah kita dapat
mengisi nilai x dan y tanpa mengakses method apapun dari luar class A maupun B. Pada
kelas teori, kita belajar untuk melakukan enkapsulasi dengan menggunakan hak akses
yang bertipe private. Untuk tahap latihan, silahkan ubah program diatas menjadi seperti
dibawah ini:
TI009 – Pemrograman Berorientasi Objek
4. Latihan 3
a. Buatlah sebuah class lagi yang mewarisi class B, misalkan class C:
TI009 – Pemrograman Berorientasi Objek
b. Kemudian ubahlah class InheritanceTest menjadi seperti dibawah ini:
Apakah program yang dibuat diatas menghasilkan error? Jika Error, class apa
yang error dan apa bunyinya?
c. Jika keyword this digunakan untuk membedakan variabel local dengan atribut suatu
objek, maka untuk membedakan atribut superclass dengan atribut subclass digunakan
keyword super. Buatlah program dibawah ini:
TI009 – Pemrograman Berorientasi Objek
d. Untuk pengaksesan constructor method dari super class, digunakan bentuk sebagai
berikut :
super (argumen1, argumen2, …) ;
Buatlah program dibawah ini:
TI009 – Pemrograman Berorientasi Objek
5. Latihan 4
Overriding method
TI009 – Pemrograman Berorientasi Objek
6. Soal
Studi kasus:
- Sebuah institusi membagi karyawannya kedalam tiga kelompok yaitu: karyawan
tetap, karyawan kontrak, dan karyawan harian.
- Setiap karyawan memiliki NIK, nama, alamat, TTL, jenis kelamin, status, jumlah
anak, total penghasilan.
- Karyawan harian mempunyai upah harian sebesar Rp 15.000 yang akan diberikan
pada akhir bulan dengan nilai sesuai dengan jumlah hari masuk kerjanya.
- Karyawan kontrak mempunyai gaji pokok
- Karyawan tetap mempunyai gaji pokok, tunjangan kesehatan 10% dari gaji, tunjangan
istri 20% dari gaji pokok bagi yang sudah menikah, tunjangan anak 10% per anak
bagi yang sudah menikah dan maksimal 3 anak yang mendapat tunjangan.
- Gaji pokok ditentukan berdasarkan golongan dengan ketentuan sbb :
Gol A = Rp 1.000.000, gol B = Rp 2.000.000, gol C = Rp 3.000.000, gol D = Rp
4.000.000
- Gaji pokok karyawan kontrak adalah 80% dari gaji pokok.
Contoh tampilan:
---------------KARYAWAN------------------
NIK :
Nama Karyawan :
Alamat :
Golongan :
Status :
Jenis Kelamin :
Jumlah Anak :
TI009 – Pemrograman Berorientasi Objek
Penghasilan :
------------KARYAWAN HARIAN-------
Nama Karyawan :
Masuk Kerja :
Upah Per Hari :
Gaji Pokok :
----------KARYAWAN KONTRAK-------
Nama Karyawan :
Gaji Pokok :
-----------KARYAWAN TETAP------------
Nama Karyawan :
Gaji Pokok :
Tunjangan Kesehatan :
Tunjangan Istri :
Tunjangan Anak :
Total Penghasilan :
TI009 – Pemrograman Berorientasi Objek
DAFTAR PUSTAKA
1. Kadir, Abdul. (2004). “Dasar Pemrograman Java 2”. Penerbit ANDI: Yogyakarta.
2. Kurniawan, Agus. (2014). “Pemrograman Java Tingkat Lanjut”. Penerbit ANDI:
Yogyakarta.
3. Hariyanto, Bambang. (2010). “Esensi-Esensi Bahasa Pemrograman Java Revisi Ketiga”.
Penerbit Informatika: Bandung.

More Related Content

What's hot

Insert, Edit, Delete pada VB 2010 dengan DB Mysql dan Crystal Report
Insert, Edit, Delete pada VB 2010 dengan DB Mysql dan Crystal ReportInsert, Edit, Delete pada VB 2010 dengan DB Mysql dan Crystal Report
Insert, Edit, Delete pada VB 2010 dengan DB Mysql dan Crystal ReportRahmat Taufiq Sigit
 
Error Handling - P 7 Teknik Kompilasi
Error Handling - P 7 Teknik Kompilasi Error Handling - P 7 Teknik Kompilasi
Error Handling - P 7 Teknik Kompilasi ahmad haidaroh
 
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)Melina Krisnawati
 
Pewarisan (inheritance) pada JAVA
Pewarisan (inheritance) pada JAVAPewarisan (inheritance) pada JAVA
Pewarisan (inheritance) pada JAVAdyko ananta
 
[PBO] Pertemuan 2 - Method, String & array
[PBO] Pertemuan 2 - Method, String & array[PBO] Pertemuan 2 - Method, String & array
[PBO] Pertemuan 2 - Method, String & arrayrizki adam kurniawan
 
Konsep Inheritance
Konsep InheritanceKonsep Inheritance
Konsep InheritanceRiski_kiki
 
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)Melina Krisnawati
 
Soal + jawaban PAT PBO Kelas XI RPL 2021.docx
Soal + jawaban PAT PBO Kelas XI RPL 2021.docxSoal + jawaban PAT PBO Kelas XI RPL 2021.docx
Soal + jawaban PAT PBO Kelas XI RPL 2021.docxSaprudin Eskom
 
Algoritma Pemrograman (Flowchart) - Logika dan Algoritma
Algoritma Pemrograman (Flowchart) - Logika dan AlgoritmaAlgoritma Pemrograman (Flowchart) - Logika dan Algoritma
Algoritma Pemrograman (Flowchart) - Logika dan AlgoritmaAri Septiawan
 
6 Materi Kuliah Normalisasi Tabel Database
6 Materi Kuliah Normalisasi Tabel Database6 Materi Kuliah Normalisasi Tabel Database
6 Materi Kuliah Normalisasi Tabel DatabaseSimon Patabang
 
Kelompok 8 - Demo implementasi Role & Privilege pada Database Oracle & my SQL
Kelompok 8 - Demo implementasi Role & Privilege pada Database Oracle & my SQLKelompok 8 - Demo implementasi Role & Privilege pada Database Oracle & my SQL
Kelompok 8 - Demo implementasi Role & Privilege pada Database Oracle & my SQLDejiko Chaem
 
pengolahan citra digital dengan java
pengolahan citra digital dengan javapengolahan citra digital dengan java
pengolahan citra digital dengan javasoftscients
 
basis data lanjut modul
 basis data lanjut modul basis data lanjut modul
basis data lanjut modulDenny Safardan
 
Menjaga Validasi tanggal dengan Jcalendar pada java
Menjaga Validasi tanggal dengan Jcalendar pada javaMenjaga Validasi tanggal dengan Jcalendar pada java
Menjaga Validasi tanggal dengan Jcalendar pada javaAgung Sulistyanto
 
Materi : Struktur Data (1 Pengantar)
Materi : Struktur Data (1 Pengantar)Materi : Struktur Data (1 Pengantar)
Materi : Struktur Data (1 Pengantar)eka pandu cynthia
 

What's hot (20)

Insert, Edit, Delete pada VB 2010 dengan DB Mysql dan Crystal Report
Insert, Edit, Delete pada VB 2010 dengan DB Mysql dan Crystal ReportInsert, Edit, Delete pada VB 2010 dengan DB Mysql dan Crystal Report
Insert, Edit, Delete pada VB 2010 dengan DB Mysql dan Crystal Report
 
Error Handling - P 7 Teknik Kompilasi
Error Handling - P 7 Teknik Kompilasi Error Handling - P 7 Teknik Kompilasi
Error Handling - P 7 Teknik Kompilasi
 
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
 
Pewarisan (inheritance) pada JAVA
Pewarisan (inheritance) pada JAVAPewarisan (inheritance) pada JAVA
Pewarisan (inheritance) pada JAVA
 
[PBO] Pertemuan 2 - Method, String & array
[PBO] Pertemuan 2 - Method, String & array[PBO] Pertemuan 2 - Method, String & array
[PBO] Pertemuan 2 - Method, String & array
 
Konsep Inheritance
Konsep InheritanceKonsep Inheritance
Konsep Inheritance
 
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
 
Soal + jawaban PAT PBO Kelas XI RPL 2021.docx
Soal + jawaban PAT PBO Kelas XI RPL 2021.docxSoal + jawaban PAT PBO Kelas XI RPL 2021.docx
Soal + jawaban PAT PBO Kelas XI RPL 2021.docx
 
Algoritma Pemrograman (Flowchart) - Logika dan Algoritma
Algoritma Pemrograman (Flowchart) - Logika dan AlgoritmaAlgoritma Pemrograman (Flowchart) - Logika dan Algoritma
Algoritma Pemrograman (Flowchart) - Logika dan Algoritma
 
6 Materi Kuliah Normalisasi Tabel Database
6 Materi Kuliah Normalisasi Tabel Database6 Materi Kuliah Normalisasi Tabel Database
6 Materi Kuliah Normalisasi Tabel Database
 
Pengujian Perangkat Lunak
Pengujian Perangkat LunakPengujian Perangkat Lunak
Pengujian Perangkat Lunak
 
Kelompok 8 - Demo implementasi Role & Privilege pada Database Oracle & my SQL
Kelompok 8 - Demo implementasi Role & Privilege pada Database Oracle & my SQLKelompok 8 - Demo implementasi Role & Privilege pada Database Oracle & my SQL
Kelompok 8 - Demo implementasi Role & Privilege pada Database Oracle & my SQL
 
pengolahan citra digital dengan java
pengolahan citra digital dengan javapengolahan citra digital dengan java
pengolahan citra digital dengan java
 
Modul belajar java I/O (Input/Ouptut)
Modul belajar java I/O (Input/Ouptut)Modul belajar java I/O (Input/Ouptut)
Modul belajar java I/O (Input/Ouptut)
 
basis data lanjut modul
 basis data lanjut modul basis data lanjut modul
basis data lanjut modul
 
P9 enkapsulasi
P9 enkapsulasiP9 enkapsulasi
P9 enkapsulasi
 
Menjaga Validasi tanggal dengan Jcalendar pada java
Menjaga Validasi tanggal dengan Jcalendar pada javaMenjaga Validasi tanggal dengan Jcalendar pada java
Menjaga Validasi tanggal dengan Jcalendar pada java
 
[PBO] Pertemuan 6 - Interface
[PBO] Pertemuan 6 - Interface[PBO] Pertemuan 6 - Interface
[PBO] Pertemuan 6 - Interface
 
Materi : Struktur Data (1 Pengantar)
Materi : Struktur Data (1 Pengantar)Materi : Struktur Data (1 Pengantar)
Materi : Struktur Data (1 Pengantar)
 
[PBO] Pertemuan 5 - Inheritance
[PBO] Pertemuan 5 - Inheritance[PBO] Pertemuan 5 - Inheritance
[PBO] Pertemuan 5 - Inheritance
 

Similar to Modul Praktikum Pemrograman Berorientasi Objek (Chap.7)

Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)Rakhmat Dedi Gunawan
 
Modul pratikum pbo - Polimorphism
Modul pratikum pbo - PolimorphismModul pratikum pbo - Polimorphism
Modul pratikum pbo - Polimorphismrahmantoyuri
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)Debby Ummul
 
Modul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi ObjekModul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi ObjekWahyu Widodo
 
Laporan PBO Pratikum 3
Laporan PBO Pratikum 3Laporan PBO Pratikum 3
Laporan PBO Pratikum 3rahmi wahyuni
 
5_Pewarisan.pdf
5_Pewarisan.pdf5_Pewarisan.pdf
5_Pewarisan.pdfJurnal IT
 
Mi1274 alpro lanjut 6 - perulangan - 2 - for, do-while
Mi1274 alpro lanjut   6 - perulangan - 2 - for, do-whileMi1274 alpro lanjut   6 - perulangan - 2 - for, do-while
Mi1274 alpro lanjut 6 - perulangan - 2 - for, do-whileDefina Iskandar
 
[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)rizki adam kurniawan
 
pertemuan_06_-_Konsep_PBO(InheratanceMultiple_Inheratance_Polimorpisme.pptx
pertemuan_06_-_Konsep_PBO(InheratanceMultiple_Inheratance_Polimorpisme.pptxpertemuan_06_-_Konsep_PBO(InheratanceMultiple_Inheratance_Polimorpisme.pptx
pertemuan_06_-_Konsep_PBO(InheratanceMultiple_Inheratance_Polimorpisme.pptxssuserc54f06
 
PBO_03_Inheritance.pptx
PBO_03_Inheritance.pptxPBO_03_Inheritance.pptx
PBO_03_Inheritance.pptxplgbk
 
Pertemuan 13 Object Oriented Program (OOP)
Pertemuan 13 Object Oriented Program (OOP)Pertemuan 13 Object Oriented Program (OOP)
Pertemuan 13 Object Oriented Program (OOP)Endang Retnoningsih
 
Aminullah Assagaf_P9-12_Metode Penelitian_10 Juli 2021.pdf
Aminullah Assagaf_P9-12_Metode Penelitian_10 Juli 2021.pdfAminullah Assagaf_P9-12_Metode Penelitian_10 Juli 2021.pdf
Aminullah Assagaf_P9-12_Metode Penelitian_10 Juli 2021.pdfAminullah Assagaf
 
Aminullah Assagaf_P13-15_Metode Penelitian_10 Juli 2021.pdf
Aminullah Assagaf_P13-15_Metode Penelitian_10 Juli 2021.pdfAminullah Assagaf_P13-15_Metode Penelitian_10 Juli 2021.pdf
Aminullah Assagaf_P13-15_Metode Penelitian_10 Juli 2021.pdfAminullah Assagaf
 
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"Asnita Meydelia C K
 
representasi pengetahuan
representasi pengetahuanrepresentasi pengetahuan
representasi pengetahuanRizkyGanteng2
 
Pertemuan 13 Algoritma Genetik.pdf
Pertemuan 13 Algoritma Genetik.pdfPertemuan 13 Algoritma Genetik.pdf
Pertemuan 13 Algoritma Genetik.pdfDanielMorantha
 
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Rakhmat Dedi Gunawan
 

Similar to Modul Praktikum Pemrograman Berorientasi Objek (Chap.7) (20)

Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)
 
Modul pratikum pbo - Polimorphism
Modul pratikum pbo - PolimorphismModul pratikum pbo - Polimorphism
Modul pratikum pbo - Polimorphism
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)
 
Modul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi ObjekModul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi Objek
 
Laporan PBO Pratikum 3
Laporan PBO Pratikum 3Laporan PBO Pratikum 3
Laporan PBO Pratikum 3
 
Modul Object Oriented Programming
Modul Object Oriented ProgrammingModul Object Oriented Programming
Modul Object Oriented Programming
 
5_Pewarisan.pdf
5_Pewarisan.pdf5_Pewarisan.pdf
5_Pewarisan.pdf
 
P5 depandi enda
P5 depandi endaP5 depandi enda
P5 depandi enda
 
Mi1274 alpro lanjut 6 - perulangan - 2 - for, do-while
Mi1274 alpro lanjut   6 - perulangan - 2 - for, do-whileMi1274 alpro lanjut   6 - perulangan - 2 - for, do-while
Mi1274 alpro lanjut 6 - perulangan - 2 - for, do-while
 
Materi kuliah-pemod
Materi kuliah-pemodMateri kuliah-pemod
Materi kuliah-pemod
 
[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)
 
pertemuan_06_-_Konsep_PBO(InheratanceMultiple_Inheratance_Polimorpisme.pptx
pertemuan_06_-_Konsep_PBO(InheratanceMultiple_Inheratance_Polimorpisme.pptxpertemuan_06_-_Konsep_PBO(InheratanceMultiple_Inheratance_Polimorpisme.pptx
pertemuan_06_-_Konsep_PBO(InheratanceMultiple_Inheratance_Polimorpisme.pptx
 
PBO_03_Inheritance.pptx
PBO_03_Inheritance.pptxPBO_03_Inheritance.pptx
PBO_03_Inheritance.pptx
 
Pertemuan 13 Object Oriented Program (OOP)
Pertemuan 13 Object Oriented Program (OOP)Pertemuan 13 Object Oriented Program (OOP)
Pertemuan 13 Object Oriented Program (OOP)
 
Aminullah Assagaf_P9-12_Metode Penelitian_10 Juli 2021.pdf
Aminullah Assagaf_P9-12_Metode Penelitian_10 Juli 2021.pdfAminullah Assagaf_P9-12_Metode Penelitian_10 Juli 2021.pdf
Aminullah Assagaf_P9-12_Metode Penelitian_10 Juli 2021.pdf
 
Aminullah Assagaf_P13-15_Metode Penelitian_10 Juli 2021.pdf
Aminullah Assagaf_P13-15_Metode Penelitian_10 Juli 2021.pdfAminullah Assagaf_P13-15_Metode Penelitian_10 Juli 2021.pdf
Aminullah Assagaf_P13-15_Metode Penelitian_10 Juli 2021.pdf
 
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
 
representasi pengetahuan
representasi pengetahuanrepresentasi pengetahuan
representasi pengetahuan
 
Pertemuan 13 Algoritma Genetik.pdf
Pertemuan 13 Algoritma Genetik.pdfPertemuan 13 Algoritma Genetik.pdf
Pertemuan 13 Algoritma Genetik.pdf
 
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
 

More from Debby Ummul

Modul Praktikum 5 - Pemrograman Visual
Modul Praktikum 5 - Pemrograman VisualModul Praktikum 5 - Pemrograman Visual
Modul Praktikum 5 - Pemrograman VisualDebby Ummul
 
Modul Praktikum 4 - Pemrograman Visual
Modul Praktikum 4 - Pemrograman VisualModul Praktikum 4 - Pemrograman Visual
Modul Praktikum 4 - Pemrograman VisualDebby Ummul
 
Modul Praktikum 3 - Pemrograman Visual
Modul Praktikum 3 - Pemrograman VisualModul Praktikum 3 - Pemrograman Visual
Modul Praktikum 3 - Pemrograman VisualDebby Ummul
 
Modul Praktikum 2 - Pemrograman Visual
Modul Praktikum 2 - Pemrograman VisualModul Praktikum 2 - Pemrograman Visual
Modul Praktikum 2 - Pemrograman VisualDebby Ummul
 
Modul Praktikum 1 - Pemrograman Visual
Modul Praktikum 1 - Pemrograman VisualModul Praktikum 1 - Pemrograman Visual
Modul Praktikum 1 - Pemrograman VisualDebby Ummul
 
Modul Praktikum 13 - Pemrograman Visual
Modul Praktikum 13 - Pemrograman VisualModul Praktikum 13 - Pemrograman Visual
Modul Praktikum 13 - Pemrograman VisualDebby Ummul
 
Modul Praktikum 12 - Pemrograman Visual
Modul Praktikum 12 - Pemrograman VisualModul Praktikum 12 - Pemrograman Visual
Modul Praktikum 12 - Pemrograman VisualDebby Ummul
 
Modul Praktikum 11 - Pemorgraman Visual
Modul Praktikum 11 - Pemorgraman VisualModul Praktikum 11 - Pemorgraman Visual
Modul Praktikum 11 - Pemorgraman VisualDebby Ummul
 
Modul Praktikum 10 - Pemrograman Visual
Modul Praktikum 10 - Pemrograman VisualModul Praktikum 10 - Pemrograman Visual
Modul Praktikum 10 - Pemrograman VisualDebby Ummul
 
Modul Praktikum 9 - Permograman Visual
Modul Praktikum 9 - Permograman VisualModul Praktikum 9 - Permograman Visual
Modul Praktikum 9 - Permograman VisualDebby Ummul
 
Modul Praktikum 6 - Pemrograman Visual
Modul Praktikum 6 - Pemrograman VisualModul Praktikum 6 - Pemrograman Visual
Modul Praktikum 6 - Pemrograman VisualDebby Ummul
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)Debby Ummul
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.11)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.11)Modul Praktikum Pemrograman Berorientasi Objek (Chap.11)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.11)Debby Ummul
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.10)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.10)Modul Praktikum Pemrograman Berorientasi Objek (Chap.10)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.10)Debby Ummul
 
SISTEM PENDUKUNG KEPUTUSAN MENGGUNAKAN METODE ANALYTICAL HIERARCHY PROCESS...
SISTEM PENDUKUNG KEPUTUSAN  MENGGUNAKAN METODE ANALYTICAL   HIERARCHY PROCESS...SISTEM PENDUKUNG KEPUTUSAN  MENGGUNAKAN METODE ANALYTICAL   HIERARCHY PROCESS...
SISTEM PENDUKUNG KEPUTUSAN MENGGUNAKAN METODE ANALYTICAL HIERARCHY PROCESS...Debby Ummul
 

More from Debby Ummul (15)

Modul Praktikum 5 - Pemrograman Visual
Modul Praktikum 5 - Pemrograman VisualModul Praktikum 5 - Pemrograman Visual
Modul Praktikum 5 - Pemrograman Visual
 
Modul Praktikum 4 - Pemrograman Visual
Modul Praktikum 4 - Pemrograman VisualModul Praktikum 4 - Pemrograman Visual
Modul Praktikum 4 - Pemrograman Visual
 
Modul Praktikum 3 - Pemrograman Visual
Modul Praktikum 3 - Pemrograman VisualModul Praktikum 3 - Pemrograman Visual
Modul Praktikum 3 - Pemrograman Visual
 
Modul Praktikum 2 - Pemrograman Visual
Modul Praktikum 2 - Pemrograman VisualModul Praktikum 2 - Pemrograman Visual
Modul Praktikum 2 - Pemrograman Visual
 
Modul Praktikum 1 - Pemrograman Visual
Modul Praktikum 1 - Pemrograman VisualModul Praktikum 1 - Pemrograman Visual
Modul Praktikum 1 - Pemrograman Visual
 
Modul Praktikum 13 - Pemrograman Visual
Modul Praktikum 13 - Pemrograman VisualModul Praktikum 13 - Pemrograman Visual
Modul Praktikum 13 - Pemrograman Visual
 
Modul Praktikum 12 - Pemrograman Visual
Modul Praktikum 12 - Pemrograman VisualModul Praktikum 12 - Pemrograman Visual
Modul Praktikum 12 - Pemrograman Visual
 
Modul Praktikum 11 - Pemorgraman Visual
Modul Praktikum 11 - Pemorgraman VisualModul Praktikum 11 - Pemorgraman Visual
Modul Praktikum 11 - Pemorgraman Visual
 
Modul Praktikum 10 - Pemrograman Visual
Modul Praktikum 10 - Pemrograman VisualModul Praktikum 10 - Pemrograman Visual
Modul Praktikum 10 - Pemrograman Visual
 
Modul Praktikum 9 - Permograman Visual
Modul Praktikum 9 - Permograman VisualModul Praktikum 9 - Permograman Visual
Modul Praktikum 9 - Permograman Visual
 
Modul Praktikum 6 - Pemrograman Visual
Modul Praktikum 6 - Pemrograman VisualModul Praktikum 6 - Pemrograman Visual
Modul Praktikum 6 - Pemrograman Visual
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.11)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.11)Modul Praktikum Pemrograman Berorientasi Objek (Chap.11)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.11)
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.10)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.10)Modul Praktikum Pemrograman Berorientasi Objek (Chap.10)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.10)
 
SISTEM PENDUKUNG KEPUTUSAN MENGGUNAKAN METODE ANALYTICAL HIERARCHY PROCESS...
SISTEM PENDUKUNG KEPUTUSAN  MENGGUNAKAN METODE ANALYTICAL   HIERARCHY PROCESS...SISTEM PENDUKUNG KEPUTUSAN  MENGGUNAKAN METODE ANALYTICAL   HIERARCHY PROCESS...
SISTEM PENDUKUNG KEPUTUSAN MENGGUNAKAN METODE ANALYTICAL HIERARCHY PROCESS...
 

Modul Praktikum Pemrograman Berorientasi Objek (Chap.7)

  • 1. TI009 – Pemrograman Berorientasi Objek LECTURE NOTE Inheritance Debby Ummul Hidayah, S.Kom., M.MSI debbyummul@gmail.com
  • 2. TI009 – Pemrograman Berorientasi Objek LEARNING OUTCOMES Mahasiswa mampu memahami dan menerapkan penggunaan inheritance. OUTLINE MATERI Inheritance: - Single inheritance - Multilevel inheritance - Access control - Konstruktor tidak diwariskan - Super keyword
  • 3. TI009 – Pemrograman Berorientasi Objek ISI 1. Mengenal Inheritance Dalam konsep pemrograman berorientasi objek, inheritance yang memungkinkan hubungan di mana ada class yang mewarisi semua attribute dan method dari class lain. Class baru yang lebih spesifik disebut subclass atau class turunan, sedangkan class yang diturunkan disebut superclass. Untuk menguji inheritance, cara lain yang dapat digunakan adalah menggunakan rumus “IS A”. Kekurangan metode tersebut adalah hanya berlaku searah (dari subclass superclass). Contoh: - Mamalia (mempunyai daun telinga, beranak, menyusui). Contoh: anjing, kucing, marmut. Cara mengujinya adalah: anjing IS A mamalia. - Kendaraan (mempunyai kemudi). Contoh: mobil, motor, pesawat. Cara mengujinya adalah: mobil IS A kendaraan 2. Latihan 1 Kita akan menggunakan kata kunci extends. Kata kunci ini digunakan untuk membuat class turunan. Strukturnya yaitu: public class [nama subclass] extends [nama super class)] {} Contoh: public class Kamus extends Buku {} Sekarang kita coba membuat program yang menerapkan prinsip inheritance tersebut. a. Buatlah program yang akan menjadi super class
  • 4. TI009 – Pemrograman Berorientasi Objek b. Buatlah program yang akan menjadi sub class dengan menggunakan kata kunci extends c. Buatlah class testernya Source code-nya: package latihaninheritance1; //class ini bertindak sebagai super class class A { int x; int y; void getNilai() { System.out.println("nilai x: " + x + " nilai y:" + y); } } //class ini bertindak sebagai subclass class B extends A { int z; void getJumlah() { System.out.println("Jumlah: " + (x + y + z)); } }
  • 5. TI009 – Pemrograman Berorientasi Objek //class ini akan digunakan sebagai class tester public class LatihanInheritance1 { public static void main(String[] args) { // TODO code application logic here A ortu = new A(); B anak = new B(); System.out.println("-----Super Class-----"); ortu.x = 43; ortu.y = 33; ortu.getNilai(); System.out.println("---------------------"); System.out.println(" "); System.out.println("------Subclass-------"); anak.x = 5; anak.y = 23; anak.getNilai(); anak.z = 25; anak.getJumlah(); } } Keterangan: Dari kode program diatas, kita dapat melihat bahwa bahwa method getNilai() muncul pada class B. Padahal kita tidak melihat adanya method getNilai() di class B. Hal ini membuktikan bahwa terdapat proses inheritance dari class A ke class B. Hubungan ini
  • 6. TI009 – Pemrograman Berorientasi Objek bersifat generalization dimana ClassChild mempunyai semua sifat dari ClassParent. Oleh karena itu, pada ClassChild cukup ditambahkan bagian yang memang merupakan spesifik milik ClassChild. 3. Latihan 2 Pada program diatas, setiap atribut yang digunakan bertipe default. Dengan kata lain, atribut pada program diatas tidak terenkapsulasi sehingga dengan mudah kita dapat mengisi nilai x dan y tanpa mengakses method apapun dari luar class A maupun B. Pada kelas teori, kita belajar untuk melakukan enkapsulasi dengan menggunakan hak akses yang bertipe private. Untuk tahap latihan, silahkan ubah program diatas menjadi seperti dibawah ini:
  • 7. TI009 – Pemrograman Berorientasi Objek 4. Latihan 3 a. Buatlah sebuah class lagi yang mewarisi class B, misalkan class C:
  • 8. TI009 – Pemrograman Berorientasi Objek b. Kemudian ubahlah class InheritanceTest menjadi seperti dibawah ini: Apakah program yang dibuat diatas menghasilkan error? Jika Error, class apa yang error dan apa bunyinya? c. Jika keyword this digunakan untuk membedakan variabel local dengan atribut suatu objek, maka untuk membedakan atribut superclass dengan atribut subclass digunakan keyword super. Buatlah program dibawah ini:
  • 9. TI009 – Pemrograman Berorientasi Objek d. Untuk pengaksesan constructor method dari super class, digunakan bentuk sebagai berikut : super (argumen1, argumen2, …) ; Buatlah program dibawah ini:
  • 10. TI009 – Pemrograman Berorientasi Objek 5. Latihan 4 Overriding method
  • 11. TI009 – Pemrograman Berorientasi Objek 6. Soal Studi kasus: - Sebuah institusi membagi karyawannya kedalam tiga kelompok yaitu: karyawan tetap, karyawan kontrak, dan karyawan harian. - Setiap karyawan memiliki NIK, nama, alamat, TTL, jenis kelamin, status, jumlah anak, total penghasilan. - Karyawan harian mempunyai upah harian sebesar Rp 15.000 yang akan diberikan pada akhir bulan dengan nilai sesuai dengan jumlah hari masuk kerjanya. - Karyawan kontrak mempunyai gaji pokok - Karyawan tetap mempunyai gaji pokok, tunjangan kesehatan 10% dari gaji, tunjangan istri 20% dari gaji pokok bagi yang sudah menikah, tunjangan anak 10% per anak bagi yang sudah menikah dan maksimal 3 anak yang mendapat tunjangan. - Gaji pokok ditentukan berdasarkan golongan dengan ketentuan sbb : Gol A = Rp 1.000.000, gol B = Rp 2.000.000, gol C = Rp 3.000.000, gol D = Rp 4.000.000 - Gaji pokok karyawan kontrak adalah 80% dari gaji pokok. Contoh tampilan: ---------------KARYAWAN------------------ NIK : Nama Karyawan : Alamat : Golongan : Status : Jenis Kelamin : Jumlah Anak :
  • 12. TI009 – Pemrograman Berorientasi Objek Penghasilan : ------------KARYAWAN HARIAN------- Nama Karyawan : Masuk Kerja : Upah Per Hari : Gaji Pokok : ----------KARYAWAN KONTRAK------- Nama Karyawan : Gaji Pokok : -----------KARYAWAN TETAP------------ Nama Karyawan : Gaji Pokok : Tunjangan Kesehatan : Tunjangan Istri : Tunjangan Anak : Total Penghasilan :
  • 13. TI009 – Pemrograman Berorientasi Objek DAFTAR PUSTAKA 1. Kadir, Abdul. (2004). “Dasar Pemrograman Java 2”. Penerbit ANDI: Yogyakarta. 2. Kurniawan, Agus. (2014). “Pemrograman Java Tingkat Lanjut”. Penerbit ANDI: Yogyakarta. 3. Hariyanto, Bambang. (2010). “Esensi-Esensi Bahasa Pemrograman Java Revisi Ketiga”. Penerbit Informatika: Bandung.