Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Pemrograman Berorientasi Obyek
OOP berputar pada konsep dari obyek yang merupakan elemen dasar dari program Anda. Obyek dalam dunia nyata dikarakterisasi oleh atribut dan tingkah lakunya. Contohnya, objek sebuah mobil mempunyai atribut tipe transmisi, warna dan manufaktur. Mempunyai tingkah laku berbelok, mengerem dan berakselerasi. Dengan deskripsi ini, obyek pada dunia nyata dapat secara mudah asumsikan sebagai obyek perangkat lunak menggunakan atribut sebagai data dan tingkah laku sebagai method.
2
3 Konsep Dasar OOP Inheritance
Inheritance (pewarisan) proses pewarisan data dan method dari suatu kelas kepada kelas lain. Pewarisan bersifat menyeluruh Semua data dan method milik kelas asalnya diturunkan ke kelas baru. Kelas yang mewariskan Super Class atau Kelas Induk Kelas yang diwariskan Sub Class atau Kelas Anak
3
Misal : kelas B adalah kelas anak dari kelas A, maka sifat sifat dari kelas A otomatis akan dimiliki juga oleh kelas B. Jika kelas induk merupakan turunan dari kelas lain, maka data dan method yang berasal dari kelas tersebut akan ikut diwariskan pula kepada kelas anaknya. Contoh : o Kelas C adalah kelas anak dari kelas B o Kelas B merupakan kelas anak dari kelas A. o Maka sifat sifat yang diwariskan kelas A ke kelas B juga akan diwariskan ke kelas C. Keyword untuk pewarisan : extends
4
Contoh
7
Keuntungan Inheritance (Pewarisan)
Bersifat reusable Tidak harus menyalin semua data dan method dari suatu kelas jika akan menggunakannya lagi Kemudahan dalam me-manage kelas yang memiliki data dan method yang sama Untuk memodifikasi suatu data atau method untuk semua subkelas / kelas anak, maka tidak perlu melakukan perubahan di masing- masing kelas anak melainkan hanya pada kelas induk saja.
8
Encapsulation Encapsulation adalah menyembunyikan attribute suatu objek dari objek lain. Attribute maupun method disembunyikan dengan cara memberikan modifire private method setter : method dalam kelas yang sama, yang memberikan nilai pada attribute private method getter : method masih dalam kelas yang sama, yang mengambil nilai dari attribute private
9
public class PersegiPanjang{
private double panjang; // attribute yg di hide private double lebar; // attribute yg di hide private double tinggi; // attribute yg di hide public PersegiPanjang() { panjang = 0; lebar = 0; } private double luas(double p, double l) { // return p*l; public void setPanjang(double panjang) { this.panjang = panjang; public void setLebar(double lebar) { this.lebar = lebar; public double getPanjang() { return panjang; } public double getLebar() return lebar; public double getLuas() return luas(panjang, lebar);
10
public class MainPersegiPanjang { public static void main(String[] srgs) { PersegiPanjang pp = new PersegiPanjang(); pp.setPanjang(10); pp.setLebar(20); System.out.println("Panjang : "+ pp.getPanjang()); System.out.println("Lebar : "+ pp.getLebar()); System.out.println("Luas : "+ pp.getLuas()); } OUTPUT
11
Polimorfisme sesuatu yang memiliki banyak bentuk.
Dalam pemrograman, polimorfisme dapat diartikan sebagai modul yang memiliki nama sama, namun memiliki behaviour (tingkah laku) yang berbeda sehingga listing code implementasinya juga berbeda Ada 2 cara Java dalam mengimplementasikan polimorfisme , yaitu: Methode overloading Methode overriding
12
Contoh Overloading
13
Contoh Overriding
14
Contoh 1 class EkspresiWajah{ public String respons() { return("Perhatikan ekspresi wajah saya"); } class Gembira extends EkspresiWajah{ return("ha ha ha.."); class Sedih extends EkspresiWajah{ return("hik hik ngeee ngeee ngeee.."); class Marah extends EkspresiWajah{ public String respons() { return("Hai kurang ajar..!"); }
15
class MainEkspresiWajah{ public static void main(String args[]) { EkspresiWajah objEkspresi = new EkspresiWajah(); Gembira objGembira = new Gembira(); Sedih objSedih = new Sedih(); Marah objMarah = new Marah(); EkspresiWajah[] arrEkspresi = new EkspresiWajah[4]; arrEkspresi[0] = objEkspresi; arrEkspresi[1] = objGembira; arrEkspresi[2] = objSedih; arrEkspresi[3] = objMarah; System.out.println("Ekspresi[0]: "+arrEkspresi[0].respons()); System.out.println("Ekspresi[1]: "+arrEkspresi[1].respons()); System.out.println("Ekspresi[2]: "+arrEkspresi[2].respons()); System.out.println("Ekspresi[3]: "+arrEkspresi[3].respons()); }
16
Output Contoh 1
17
Contoh 2 public class Employee { private String name;
private double salary; protected Employee(String n, double s) { name = n; salary = s; } protected String getDetails() { return "Name : "+name+ "\nSalary : "+salary; public void cetak() { System.out.println("Coba di Employee");
18
public class Manager extends Employee {
private String department; public Manager(String nama, double salary, String dep) { super(nama, salary); department = dep; } public String getDepartment() { return department; public String getDetails() { return super.getDetails()+"\nDepartment : "+getDepartment(); public void cetak() { System.out.println("Coba di Manager");
19
Output : public class View { public static void main(String[] args) {
Employee e = new Employee("Ali", ); Employee em = new Manager("Ali", ,"Informatika"); System.out.println("Data employee :\n"+e.getDetails()); System.out.println("Data manager :\n"+em.getDetails()); em.cetak(); } Output :
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.