1 / 14

POLIMORPHISM

POLIMORPHISM. Adharul Muttaqin. Kura-Kura Serba Bisa. Perhatikan code berikut (class KuraKura , Sayap , Roket , Kaki sudah dibuat ): class KuraKuraTest { public static void main(String[] args ){ KuraKura turtle=new KuraKura (); turtle.bergerak (); Sayap sayap =new Sayap ();

deidra
Download Presentation

POLIMORPHISM

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. POLIMORPHISM Adharul Muttaqin Adharul M - adharul@ub.ac.id

  2. Kura-Kura Serba Bisa • Perhatikan code berikut (class KuraKura, Sayap, Roket, Kaki sudahdibuat): class KuraKuraTest{ public static void main(String[] args){ KuraKura turtle=new KuraKura(); turtle.bergerak(); Sayapsayap=new Sayap(); Roketroket=new Roket(); Kaki kaki=new Kaki(); turtle.setAlatGerak(sayap); turtle.bergerak(); turtle.setAlatGerak(roket); turtle.bergerak(); turtle.setAlatGerak(kaki); turtle.bergerak(); } } Haisayakura – kura Sayamampubergerak - Menyiapkansayap - Menyiapkanroket - Menyiapkan kaki Sekarangsayapakai Sayap@190d11 Sayabisaterbang Sekarangsayapakai Roket@a90653 Sayabisaterbangantarbenua Sekarangsayapakai Kaki@de6ced Sayabisajalan-jalanmeskilambat Adharul M - adharul@ub.ac.id

  3. Outline • Pengertian Porlimorphism • Contoh Polimorphism di Java Adharul M - adharul@ub.ac.id

  4. Pengertian Polimorphism • Secara umum, polimorphism dimaksudkan pada kemampuan untuk muncul dalam berbagai bentuk • Polymorphism di Java: • Kemampuan suatu refference variable untuk bertindak (melakukan method) sesuai dengan object yang dipegangnya. • Memungkinkan berbagai object dari berbagai subclass diperlakukan sebagai sebuah object super class. Super class yang dimaksud akan melakukan tindakan sesuai dengan object subclass tersebut. Adharul M - adharul@ub.ac.id

  5. Contoh Polymorphism • Diberikan sebuah parent class Shape serta beberapa subclass Circle, Rectangle, dan Triangle. Polymorphism memungkinkan programmer mendefinisikan method getLuas() pada setiap subclass. Apapun object yang dibuat, getLuas() akan memberikan hasil yang benar  konsep Override Adharul M - adharul@ub.ac.id

  6. Contoh #1: Polymorphism pada Java • Diberikan parent class Person dan child class Student, kemudian subclass yang lain adalah Employee. • Hierarki class-nya adalah sbb: Adharul M - adharul@ub.ac.id

  7. Contoh #1: Polymorphism pada Java Kita perhatikan method getNamepada super class Person yang dioverridepada subclass Student dan Employee. public class Student { public String getName(){ System.out.println(“Student Name:” + name); return name; } } public class Employee { public String getName(){ System.out.println(“Employee Name:” + name); return name; } } Adharul M - adharul@ub.ac.id

  8. Contoh #1: Polymorphism pada Java • Di Java, kita dapat membuat sebuah refference yang bertype super class (Person) pada sebuah object subclass (Student). public static main( String[] args ) { StudentstudentObject= new Student(); EmployeeemployeeObject = new Employee(); Personref = studentObject; //Person merefer ke object dg type student String name = ref.getName(); //Memanggil getName() milik obeject Student } Adharul M - adharul@ub.ac.id

  9. Contoh #1: Polymorphism pada Java • Perhatikan main method, saat kita panggil getName dari object ref, method getName yang dipanggil adalah milik object Student. • Jika kita assign variable ref ke object Employee, maka method getName milik Employee yang dipanggil Adharul M - adharul@ub.ac.id

  10. Contoh #1: Polymorphism pada Java • Tambahkan di main method kode berikut ref = employeeObject; //Person ref merefer ke object Employee String temp = ref.getName(); //getName() milik Employee yang dipanggil System.out.println( temp ); Adharul M - adharul@ub.ac.id

  11. Contoh #2: Polymorphism pada Java • Contoh lain implementasi polymorphism adalahdenganmelakukan passing sebuahrefferencesebagai parameter input sebuah method. • Misalkankitatambahkansebuah static method printInformation yang menggunakan type Person sebagai parameter. public static printInformation( Person p ){ // It will call getName() method of the // actual object instance that is passed p.getName(); } Adharul M - adharul@ub.ac.id

  12. Contoh #2: Polymorphism pada Java • Kita dapat menggunakan type Employee ataupun Student untuk dijadikan input method printInformation. Mengapa ? Karena Employee dan Student adalah Person public static main( String[] args ){ Student studentObject = new Student(); Employee employeeObject = new Employee(); printInformation( studentObject ); printInformation( employeeObject ); } Adharul M - adharul@ub.ac.id

  13. Keuntungan Simplicity • Jika kita memerlukan menulis suatu code yang dapat digunakan berbagai jenis type, code hanya cukup berinteraksi dengan base class (parents) dan dapat mengabaikan detail yang lebih spesifik yang berada pada subclass. • Memudahkan penulisan program dan memudahkan pihak lain Extensibility • Subclass yang lain dapat dibuat sebagai type baru dan object dari class baru tersebut masih kompatible dengan kode yang sudah ada. Adharul M - adharul@ub.ac.id

  14. Tugas Pra UTS • Suatuperusahaan System Developer mempunyaibanyakpegawai. George Harry, Adin Chandra, danAlbertinaadalah programmer padaperusaahantersebut yang digajisebesargajipokok. Baikhaqisebagaiseorang sales berhakdiberigajiberupagajipokokditambah bonus. Sebagaiseorangmanajer, Bernard mendapatkangajipokok plus tunjangan. • Denganpendekatan OOP, buat program penggajian (Payroll) sederhana yang dapatmencetakataumenampilkanseluruhgajipegawaiperusahaantersebut! Lengkapipertanyaanberikut: • Gambarkandesain class diagramnya! • Implementasikandengan Java! • Buatlah Test Unitnya! Adharul M - adharul@ub.ac.id

More Related