Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Pertemuan 2 PBO Imam Solikin, M.Kom..

Presentasi serupa


Presentasi berjudul: "Pertemuan 2 PBO Imam Solikin, M.Kom.."— Transcript presentasi:

1 Pertemuan 2 PBO Imam Solikin, M.Kom.

2 Kelas dan Obyek Kelas Blueprint untuk objek.
(Memuat semua data dan metoda/fungsi yang bersifat umum). Obyek Dalam bahasa Java segala sesuatu adalah objek. Dapat juga diartikan sebagai obyek – obyek pada dunia nyata.

3 Sehingga obyek juga memuat data & metoda. Contoh: Tukul (Obyek)
Dosen (KELAS)  Instansiasi  Adi, Jasson, Hendro, Jessica, Indrastanti (OBJEK). Sehingga obyek juga memuat data & metoda. Contoh: Tukul (Obyek) Data : Nama, alamat, dsb. Metoda : Kuliah, makan, pacaran, dsb.

4 Pembungkusan (Encapsulation)
Penyembunyian Data dan Metoda/Fungsi Dalam Suatu Objek. Derajad Kenampakan Data dan Metoda/Fungsi : Private, Public, Protected.

5 Penentu Akses / Access Modifier
Merupakan hak akses data dan variable. Public Dapat diakses dari luar kelas. Private Hanya bisa diakses kelas itu sendiri (tidak bisa dari luar kelas). Protected Dapat diakses kelas itu & turunannya.

6 Setter dan Getter Digunakan untuk mengakses variable yang berada di luar kelas yang biasanya tidak diperbolehkan.

7 Class Buku

8 Class TestBuku

9 Pewarisan Membuat suatu kelas dengan memanfaatkan kelas yang sudah ada. Mewarisi semua metoda dan variabelnya.

10 Kelas A disebut Super Kelas (Parent Class).
Kelas B disebut Sub Kelas (Child Class).

11 Class Manusia

12 Class Andi

13 Class TestInheritance

14 Akses Modifier Protected
untuk mengatur agar suatu variabel ataupun metode yang terdapat pada sebuah kelas dapat diakses pada kelas itu sendiri dan pada subkelas/ kelas turunan.

15 Kelas dasar : Manusia.java
public class Manusia { private String nama; protected int umur = 0; public void infoUmur() { System.out.println("umur: " + this.umur); }

16 Kelas turunan : Andi.java public class Andi extends Manusia{ String hobi; } Pada kelas turunan (Andi) kita tidak dapat mengakses variabel yang memiliki akses modifier berjenis private yaitu nama yang terdapat pada kelas dasar (Manusia).

17 Kelas uji: TestInheritance
Kelas uji: TestInheritance.java public class TestInheritance { public static void main(String[] args) { Andi andi = new Andi(); andi.infoUmur(); System.out.println("umur andi: " + andi.umur); System.out.println("nama andi: "+andi.nama); }

18 Agar dapat diakses hanya oleh kelas turunan saja, kita dapat mengganti akses modifier variabel nama yang semula private menjadi protected.

19 Metode Superkelas Adakalanya perlu untuk memanggil metode superkelas dari subkelas. Untuk keperluan ini, Java menyediakan keyword super yang berarti superkelas.

20 Kelas dasar : Manusia.java
public class Manusia { protected String nama; protected int umur = 0; public void infoUmur() { System.out.println("umur: " + this.umur); }

21 Kelas turunan : Andi.java
public class Andi extends Manusia { String hobi; public void infoUmur() { super.infoUmur(); // memanggil metode super kelas }

22 Terlihat bahwa kelas turunan (Andi) mendefinisikan metode infoUmur, sementara kelas dasarnya (Manusia) juga memiliki metode infoUmur(). Hal seperti ini diperbolehkan dan sering dikatakan sebagai ”method overridding” atau ”penimpaan metode”.

23 Kelas uji: TestInheritance.java
public class TestInheritance { public static void main(String[] args) { Andi andi = new Andi(); andi.umur=15; andi.infoUmur(); System.out.println("umur andi: " + andi.umur); }

24 Konstruktor Superkelas
Pada contoh-contoh sebelumnya superkelas tidak memiliki konstruktor. Bagaimana halnya jika superkelas memiliki konstruktor? Bagaimana caranya bila subkelas hendak memanggil konstruktor? Kita dapat menggunakan keyword super untuk keperluan tersebut dengan bentuk: super(argumen1,argumen2,...);

25 Kelas dasar : Manusia.java
public class Manusia { private int umur; // konstruktor public Manusia() { this.umur = 0; } public void infoUmur() { System.out.println("umur: " + this.getUmur()); public int getUmur() { return umur; public void setUmur(int umur) { this.umur = umur;

26 Kelas dasar : Manusia.java
public class Manusia { private int umur; // konstruktor public Manusia() { this.umur = 0; } public void infoUmur() { System.out.println("umur: " + this.getUmur()); public int getUmur() { return umur; public void setUmur(int umur) { this.umur = umur;

27 Kelas uji: TestInheritance.java
public class TestInheritance { public static void main(String[] args) { Andi andi = new Andi(15,"berenang"); andi.infoUmur(); System.out.println("hobi andi: " + andi.hobi); }

28 Polimorfisme kemampuan untuk berhubungan dengan berbagai tipe berdasarkan pada fitur yang sama.

29 Class Makanan

30 Class MakananLokal extends Makanan

31 Class Soto extends MakananLokal

32 Class TestPolimorfisme

33 TAKE HOME

34 Buatlah sebuah kelas Buku2 yang mewarisi kelas buku kemudian buatlah
Modifikasilah kelas Buku yang sudah dibuat tadi sehingga terdapat atribut judul, pengarang, jumlahBuku, hargaSatuan kemudian buatlah sebuah method untuk mencetak! Buatlah sebuah kelas Buku2 yang mewarisi kelas buku kemudian buatlah method hargaBuku yang digunakan untuk menghitung hargaBayar dengan ketentuan sbb hargaBayar = hargaSatuan*jumlahBuku

35 method hargaDiskon Bila hargaBayar >= maka mendapatkan diskon 10% Bila hargaBayar >= maka mendapatkan diskon 15%

36 Buatlah kelas TestBuku untuk mengakses kedua kelas tersebut, sehingga output yang akan diberikan adalah sebagai berikut:

37 KETENTUAN : Dikerjakan secara berkelompok,
Terlambat, copy paste, nilai = 0 ! Yang di kumpul : Sourcode/file.java, printscreen output program seperti contoh, jelaskan sejelas mungkin. Dikirim ke Nama Subject : PBOL_NIM1_NIM2 Nama File : PBOL_NIM1_NIM2.rar Kumpul paling lambat: jum’at,


Download ppt "Pertemuan 2 PBO Imam Solikin, M.Kom.."

Presentasi serupa


Iklan oleh Google