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

Slides:



Advertisements
Presentasi serupa
Konsep OOP di Java TRASPAC, Mei 2009 Oleh : Siwi Arie Widadi.
Advertisements

Mendapatkan Input dari Keyboard
Pemrograman JAVA (TIB09)
CARI ERROR !!! ADA BERAPA KESALAHAN ??? Apa beda JRE dan JDK ??? JDK JRE.
Pemrograman Berorientasi Objek
Membuat class sendiri.
Nur Hayatin, S.ST Jurusan Teknik Informatika Universitas Muhammadiyah Malang Sem Genap 2010.
POLIMORFISME Imam Fahrur Rozi 01.
Abstract Class & Interface
Workshop SCS: Java Game Programming
Polymorphism Viska Mutiawani, M.Sc.
Pemograman beorientasi objek
SLIDE OTOMATIS PINDAH DALAM WAKTU 4-5 MENIT. A:kiriB:kanan Deklarasikan sebuah variabel dengan nama ‘isi’ yang mempunyai type array of double dengan ukuran.
Overriding, Overloading, Polymorphism
INHERITANCE.
Method.
Inheritance Ery Setiyawan Jullev A.
ABSTRACT CLASS & INTERFACE
Inheritance (Pewarisan)
POLIMORFISM Ery Setiyawan Jullev A.
Overriding, Overloading, Polymorphism
POLIMORFISME 2 Imam Fahrur Rozi 01.
Pertemuan 8 Pemrograman Berbasis Obyek Oleh Tita Karlita
Encapsulation, Inheritance, polymorphism, dan interface
Mendapatkan input dari keyboard
Variabel, Method & Constructor Oleh : Nur Hayatin, S.ST Teknik Informatika – UMM 2011.
INHERITANCE, POLYMORPHISM, DAN INTERFACE
Pewarisan, Polimorfisme, dan Interface
Inheritance (Pewarisan)
ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM
As’ad Djamalilleil Function (method) As’ad Djamalilleil
Pertemuan : Object Oriented Programming
Inheritance Nana Ramadijanti Laboratorium Computer Vision Politeknik Elekltronika Negeri Surabaya PENS-ITS 2009.
PELATIHAN JAVA FUNDAMENTAL
07 Advanced Class Features
MEMBUAT CLASS SENDIRI. Pada akhir pembahasan, peserta diharapkan mampu untuk :  Membuat class  Mendeklarasikan atribut dan method untuk class  Menggunakan.
Bekerja dengan Java class library
Polymorphism (bag. 2).
Inheritance Konsep Inheritance Protected Member
INTERFACE & ABSTRACT CLASS Object Oriented Programming with JAVA 2011/2012.
OOP Java 06 Polymorphism.
Public class RelasiDemo { public static void main(String[] args) { //beberapa nilai int i = 37; int j = 42; int k = 42; System.out.println("Nilai variabel...");
OOP Java - Tj Konsep Dasar OOP.
Inheritance Matakuliah : T0984 / Algoritma dan Metode Object Oriented Programming II Pertemuan : 4 Tahun : 2008 Versi : 1/0.
Inheritance, polymorphism, dan interface
IT-652 – Pemrograman Berorientasi Aspek Ramos Somya.
INHERITANCE (Oleh : Nur Hayatin, S.ST)
OOP Java Minggu 2b Dasar OOP. Class (1) Deklarasi class : [ *] class { [ *] } Cat : [] = optional, * = repeat 0-N.
MATERI IV OOP (Object Oriented Programming) Chapter II.
Pertemuan 6 PEWARISAN AND POLYMORPHISM
Pemrograman Visual I Outline: Method Method Void & fungsi
FONDASI PEMROGRAMAN & STRUKTUR DATA #8
Access Modifier.
Inheritance dan Kata Kunci static
POLYMORPHISM (KEBANYAKRUPAAN)
Pemograman Berorientasi Objek
Encapsulation, Inheritance, Polymorphism
@kovazzevic | SMKN 24 Jakarta
POLYMORPHISM (KEBANYAKRUPAAN)
Enkapsulasi, Accessor Method, Mutator Method
MEMBUAT CLASS SENDIRI 2.
Konsep Dasar Pemrograman Berorientasi Objek
Inheritance.
POLYMORPHISM.
Pilar Object Oriented Programming
Pemrograman Berorientasi Object
Pilar Object Oriented Programming
Pilar Object Oriented Programming
Pertemuan 5 Inheritance
DPH1C4 Pemrograman berorientasi Obyek
Transcript presentasi:

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

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(); Roket roket=new Roket(); Kaki kaki=new Kaki(); turtle.setAlatGerak(sayap); turtle.setAlatGerak(roket); turtle.setAlatGerak(kaki); } Hai saya kura – kura Saya mampu bergerak - Menyiapkan sayap - Menyiapkan roket - Menyiapkan kaki Sekarang saya pakai Sayap@190d11 Saya bisa terbang Sekarang saya pakai Roket@a90653 Saya bisa terbang antar benua Sekarang saya pakai Kaki@de6ced Saya bisa jalan-jalan meski lambat Adharul M - adharul@ub.ac.id

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

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

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

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

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

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 ) { Student studentObject = new Student(); Employee employeeObject = new Employee(); Person ref = studentObject; //Person merefer ke object dg type student String name = ref.getName(); //Memanggil getName() milik obeject Student } Adharul M - adharul@ub.ac.id

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

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

Contoh #2: Polymorphism pada Java Contoh lain implementasi polymorphism adalah dengan melakukan passing sebuah refference sebagai parameter input sebuah method. Misalkan kita tambahkan sebuah 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

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

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

Tugas Pra UTS Suatu perusahaan System Developer mempunyai banyak pegawai. George Harry, Adin Chandra, dan Albertina adalah programmer pada perusaahan tersebut yang digaji sebesar gaji pokok. Baikhaqi sebagai seorang sales berhak diberi gaji berupa gaji pokok ditambah bonus. Sebagai seorang manajer, Bernard mendapatkan gaji pokok plus tunjangan. Dengan pendekatan OOP, buat program penggajian (Payroll) sederhana yang dapat mencetak atau menampilkan seluruh gaji pegawai perusahaan tersebut! Lengkapi pertanyaan berikut: Gambarkan desain class diagramnya! Implementasikan dengan Java! Buatlah Test Unitnya! Adharul M - adharul@ub.ac.id