Dokumen ini membahas tentang konsep inheritance dalam pemrograman berorientasi objek. Inheritance memungkinkan hubungan antara class dimana subclass mewarisi atribut dan method dari superclass. Dokumen ini memberikan contoh kode program untuk mempraktekkan single inheritance, multilevel inheritance, dan access control. Juga dijelaskan penggunaan kata kunci super dan konstruktor yang tidak diwariskan.
Trigger adalah blok PL/SQL yang disimpan dalam database dan akan diaktivasi ketika kita melakukan statement-statement SQL (DELETE, UPDATE, dan INSERT) pada sebuah tabel. Aktivasi trigger didasarkan pada event yang terjadi di dalam tabel tersebut sehingga trigger dapat membantu dalam menjaga integritas dan konsistensi data. Implementasi trigger yang sering ditemui dalam dunia nyata adalah untuk mengeset dan mengubah nilai kolom dalam suatu tabel sehingga validasi nilai dari tabel tersebut akan terjaga. Adanya trigger dalam database akan meringankan kita dalam pembuatan aplikasi karena di dalam aplikasi yang kita buat, kita tidak perlu lagi untuk melakukan validasi data.
Materi yang ada pada slide ini berisi :
Netbeans Theme
Package (Teori & Praktik)
Implementasi Enkapsulasi & instansiasi Objek (Teori & Praktik)
----------------------------------------------------------------------
Keep in touch with me in :
Twitter : https://twitter.com/rizkiadam_1991
Email : rizkiadamunikom@gmail.com
Github : https://github.com/RizkiAdamKurniawan
IG : @rizkiadamkurniawan
Trigger adalah blok PL/SQL yang disimpan dalam database dan akan diaktivasi ketika kita melakukan statement-statement SQL (DELETE, UPDATE, dan INSERT) pada sebuah tabel. Aktivasi trigger didasarkan pada event yang terjadi di dalam tabel tersebut sehingga trigger dapat membantu dalam menjaga integritas dan konsistensi data. Implementasi trigger yang sering ditemui dalam dunia nyata adalah untuk mengeset dan mengubah nilai kolom dalam suatu tabel sehingga validasi nilai dari tabel tersebut akan terjaga. Adanya trigger dalam database akan meringankan kita dalam pembuatan aplikasi karena di dalam aplikasi yang kita buat, kita tidak perlu lagi untuk melakukan validasi data.
Materi yang ada pada slide ini berisi :
Netbeans Theme
Package (Teori & Praktik)
Implementasi Enkapsulasi & instansiasi Objek (Teori & Praktik)
----------------------------------------------------------------------
Keep in touch with me in :
Twitter : https://twitter.com/rizkiadam_1991
Email : rizkiadamunikom@gmail.com
Github : https://github.com/RizkiAdamKurniawan
IG : @rizkiadamkurniawan
Materi yang ada pada slide ini berisi :
Definisi Interface
Perbedaan interface dengan class
Format interface
Perancangan
Studi Kasus
Multiple interface
Latihan 6 & Upload ke github
----------------------------------------------------------------------
Keep in touch with me in :
Twitter : https://twitter.com/rizkiadam_1991
Email : rizkiadamunikom@gmail.com
Github : https://github.com/RizkiAdamKurniawan
IG : @rizkiadamkurniawan
Program : sederetan instruksi atau perintah (dalam bahasa yang di mengerti oleh komputer) untuk melaksanakan tugas-tugas tertentu, sehingga menghasilkan suatu keluaran / output yang diharapkan.
Algoritma : urutan langkah-langkah atau instruksi-instruksi yang harus dilaksanakan untuk memecahkan masalah.
Materi yang ada pada slide ini berisi :
Definisi Interface
Perbedaan interface dengan class
Format interface
Perancangan
Studi Kasus
Multiple interface
Latihan 6 & Upload ke github
----------------------------------------------------------------------
Keep in touch with me in :
Twitter : https://twitter.com/rizkiadam_1991
Email : rizkiadamunikom@gmail.com
Github : https://github.com/RizkiAdamKurniawan
IG : @rizkiadamkurniawan
Program : sederetan instruksi atau perintah (dalam bahasa yang di mengerti oleh komputer) untuk melaksanakan tugas-tugas tertentu, sehingga menghasilkan suatu keluaran / output yang diharapkan.
Algoritma : urutan langkah-langkah atau instruksi-instruksi yang harus dilaksanakan untuk memecahkan masalah.
Modul ini membahas tentang konsep pemrograman berorientasi objek dilengkapi dengan contoh source code untuk praktik. Membahas Class, Object, Pewarisan, Polimorfisme, Konstruktor
Materi yang ada pada slide ini berisi :
Pengenalan Konsep Class Diagram
Hubungan OOAD dengan OOP
Konsep Objek dan Kelas
Konsep dan Simulasi Enkapsulasi
Konsep dan Simulasi Pewarisan
Konsep dan Simulasi Polimorphisme
Penjelasan Konsep Abstraksi Pada OOAD dan OOP
Penjelasan Konsep Generic
----------------------------------------------------------------------
Keep in touch with me in :
Email : rizkiadamunikom@gmail.com
Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)Debby Ummul
Modul ini berisi materi praktikum tentang pembuatan aplikasi CRUD perpustakaan. Sebenarnya ini adalah edisi revisi dari modul sebelumnya yaitu Chapter 11. hehe....
Bahasa yang digunakan masih sama yaitu menggunakan bahasa Java
Modul Praktikum Pemrograman Berorientasi Objek (Chap.11)Debby Ummul
Modul ini berisi materi praktikum. Topik pembahasannya adalah mengenai "Aplikasi CRUD Perpustakaan". Bahasa yang digunakan untuk membuat aplikasinya menggunakan bahasa Java
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:
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 :