OOP Chapter 8
Transcript of OOP Chapter 8
![Page 1: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/1.jpg)
Bei Harira Irawan, S.Kom, MM, M.Kom
- 8 -
![Page 2: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/2.jpg)
Karakteristik (Inheritance) Sifat Inheritance pada JAVA sendiri dimaksud dengan
sebuah objek dapat mempunyai objek turunan Class dapat memiliki class turunan (pewaris) Class yang mempunyai class turunan disebut sebagai Parent
Class atau Class Pemilik Warisan Class yang menjadi turunan dari Parent Class atau Class
Pemilik Warisan disebut sebagai Subclass atau Class Pewaris Secara sederhana misal Mobil adalah parent class maka
class pewaris bisa berupa mitsubishi, toyota, honda, dan lain sebagainya
![Page 3: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/3.jpg)
Karakteristik (Inheritance) Suatu subclass dapat mewarisi sebagian atau keseluruhan
sifat dari parent class-nya, dengan kata lain sebuah subclass merupakan perluasan dari parent class
Pendeklarasian sifat inheritance ini menggunakan keyword extends setelah nama class diikuti denga nama parent class, kata kunci extends memberikan informasi pada kompiler Java bahwa kita ingin melakukan perluasan class
![Page 4: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/4.jpg)
LATIHAN
public class Buku {public String jenis_buku;public String pengarang;public String publisher;
public void jenis() { System.out.println (“Buku Referensi”); }
public void nama_penulis(){ System.out.println (“Bei Harira Irawan, MM, M.Kom”); }
public void penerbit(){ System.out.println (“HTC-Bekasi”); }
}
Buat class (Parent Class) dengan nama Buku dalam Package Inheritance
![Page 5: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/5.jpg)
LATIHAN
public class BukuProgram extends Buku {
public void jenis (){ System.out.println("Buku Belajar OOP Java"); }
}
Buat class lain (subclass/anak class) dengan nama BukuProgram dalam Package Inheritance
![Page 6: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/6.jpg)
LATIHAN
public class BukuBeraksi {
public static void main(String[] args) {Buku BukuSaya = new Buku();BukuSaya.jenis_buku = "Buku Belajar Pemrogaman";BukuSaya.jenis();
BukuSaya.pengarang = "Razqa Lathif Pradana";System.out.println ("Nama Pengarang = " + BukuSaya.pengarang);
BukuSaya.penerbit();
}
}
Buat class lain lagi (Main Class) dengan nama BukuBeraksi dalam Package Inheritance
![Page 7: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/7.jpg)
LATIHAN
![Page 9: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/9.jpg)
Karakteristik (Abstraction) Abstraksi adalah proses pengabstraksian atau
menyembunyikan kerumitan dari suatu proses (dalam hal ini program)
Contoh kita memiliki motor, kita tidak perlu tahu bagaimana membuat sebuah ban depan motor, mesin-mesin motor yang rumit dan lain-lain
Pada abstraksi, pengguna hanya bisa melihat produk (motor) adalah sebuah objek yang bisa digunakan dengan perintah tertentu oleh pengguna sehingga dapat digunakan sebagaimana mestinya
Pengguna tinggal menggunakan tanpa harus mengetahui bagaimana kerumitan atau cara membuat komponen- komponen yang telah dibuat sebelumnya
![Page 10: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/10.jpg)
LATIHAN
public abstract class Belajar { public int jamBelajar;
public String tempat; public void belajar(){
};
}
Buat class (Abstract Class) dengan nama Belajar dalam Package Abstraction
![Page 11: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/11.jpg)
LATIHAN
public class UT extends Belajar {
public void setJam(int jam){jamBelajar = jam;
}
public void setKampus1(String kampus){ tempat = kampus; }
@Overridepublic void belajar() {System.out.println("Belajar OOP JAVA di " + tempat + " selama " + jamBelajar + " jam"); }
}
Buat class lain (subclass/turunan) dengan nama UT dalam Package Abstraction
![Page 12: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/12.jpg)
LATIHAN
public class SonySugema extends Belajar {
public void setJam(int jam){jamBelajar = jam;
}
public void setKampus2(String kampus2){tempat = kampus2;
} @Overridepublic void belajar() {System.out.println("Belajar OOP JAVA di " + tempat + " selama " + jamBelajar + " jam");
}
}
Buat class lain (subclass/turunan) dengan nama SonySugema dalam Package Abstraction
![Page 13: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/13.jpg)
LATIHAN
public class JadwalBelajar {
public static void main(String[] args) { UT kampusUT = new UT(); SonySugema kampusSonySugema = new SonySugema(); kampusUT.setJam(2); kampusSonySugema.setJam(3); kampusUT.setKampus1("Kampus UT"); kampusSonySugema.setKampus2("Kampus Sony Sugema"); kampusUT.belajar(); kampusSonySugema.belajar(); }
}
Buat class lain (subclass/turunan) dengan nama JadwalBelajar dalam Package Abstraction
![Page 14: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/14.jpg)
LATIHAN
![Page 15: OOP Chapter 8](https://reader036.fdokumen.com/reader036/viewer/2022073113/5875eec21a28ab006e8b458f/html5/thumbnails/15.jpg)