Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Pemrograman Berorientasi Object

Presentasi serupa


Presentasi berjudul: "Pemrograman Berorientasi Object"— Transcript presentasi:

1 Pemrograman Berorientasi Object
Polymorphism, Abstract, & Interface Abas Setiawan Teknik Informatika s1

2 Overriding VS Overloading

3 Overriding Method Pada bab sebelumnya kita sudah membahas tentang kelas turunan (inheritance) Pada sub-class biasanya mendapatkan warisan method dari super-class. Terkadang perlu bagi sub-class untuk memodifikasi isi atau implementasi dari method yang diwariskan dari super-class. Modifikasi method pada sub-class tersebut disebut dengan overriding method.

4 Overriding VS Overloading

5 Polymorphism

6 Subtype & Supertype Tiga pilar dasar pada PBO yaitu Enkapsulasi, Inheritance, dan Polymorphism. Kita sudah mempelajari Enkapsulasi dan Inheritance. Sebelum ke polymorphism, ada dua istilah yang harus dimengerti terlebih dahulu: Class yang didefinisikan oleh sub-class disebut dengan subtype Class yang didefinisikan oleh super-class disebut dengan supertype Contoh: ObjekGeometri merupakan supertype dan Kotak merupakan subtype.

7 Polymorphism Secara sederhana Polymorphism berarti memiliki arti banyak bentuk. Dalam pemrograman, polymorphism berarti suatu variable dari supertype dapat mereferensi objek subtype. Lalu apa yang dimaksud dengan mereferensi?

8 Implementasi

9 Dynamic Binding Sebuah method dapat diimplementasi pada beberapa kelas sepanjang rantai keturunan. Method yang akan di panggil secara dinamis dan terikat saat runtime.

10 Implementasi class GraduateStudent extends Student { }
class Student extends Person { @Override public String toString() { return "Student" ; } class Person extends Object { return "Person"; public class DynamicBindingDemo { public static void main(String[] args) { m( new GraduateStudent()); m(new Student()); m(new Person()); m(new Object()); } public static void m(Object x) { System.out.println(x.toString());

11 Hak Akses Detail

12 Abstract

13 Abstract Classes Suatu abstract class tidak dapat digunakan untuk membuat sebuah objek. Abstrak class berisi abstrak method, yang nantinya diimplementasikan secara konkret kedalam subclass. Untuk menggunakan abstract class, harus di turunkan pada suatu class. Ketika sudah diturunkan pada suatu class, HARUS mengimplementasikan semua abstrak method yang sudah didefinisikan sebelumnya pada abstract class.

14 Class Diagram

15 Implementasi public abstract class Employee { private String name;
private String address; private int number; public abstract double computePay(); } /* File name : Salary.java */ public class Salary extends Employee { private double salary; public double computePay() { System.out.println("Computing salary pay for " + getName()); return salary/52; }

16 Latihan.. Abstrak kelas yang mana saja yang benar dalam implementasi programnya?

17 Interface

18 Interface Interface adalah (Seperti Class) namun hanya berisi suatu konstan dan abstract method. Berikut adalah contoh dari interface. Tidak bisa melakukan instance pada interface. Tidak dengan extends tetapi dengan implements. Semua method yang didefinisikan pada interface harus diimplementasikan pada kelas yang men-implement interface tersebut.

19 Contoh Class Diagram Interface

20 Implementasi /* File name : MammalInt.java */
public class MammalInt implements Animal { public void eat() { System.out.println("Mammal eats"); } public void travel() { System.out.println("Mammal travels"); public int noOfLegs() { return 0; public static void main(String args[]) { MammalInt m = new MammalInt(); m.eat(); m.travel(); /* File name : Animal.java */ interface Animal { public void eat(); public void travel(); }

21 Latihan.. Interface yang mana saja yang benar dalam implementasi programnya?

22 Referensi Introduction to Java Programming, Comprehensive Version (10th Edition) by Y. Daniel Liang, 2015, Pearson Education, Inc.


Download ppt "Pemrograman Berorientasi Object"

Presentasi serupa


Iklan oleh Google