Pengenalan Polimorfisme Implementasi Polimorfisme

dokumen-dokumen yang mirip
JOBSHEET POLIMORFISME

Inheritance (Pewarisan Sifat) Imam Fahrur Rozi

Overriding. Subclass yang berusaha memodifikasi tingkah laku yang diwarisi dari superclass. Tujuan: subclass memiliki tingkah laku yang lebih

5/23/12. Inheritance. Pengertian inheritance Deklarasi inheritance Single inheritance Multilevel inheritance Access Control super keyword

BAB 7 OVERLOADING DAN OVERRIDING

7 Inheritance. + berjalan() + berhenti PENDAHULUAN

Overriding, Overloading, Polymorphism. Pertemuan 10 Pemrograman Berbasis Obyek Dr. Rodiah

Praktikum Inheritace PERCOBAAN 1 Tujuan: Prosedur Percobaan:

PEWARISAN. Disusun Oleh: Reza Budiawan. Untuk: Tim Dosen Algoritma & Pemrograman Lanjut

Employee employee=new Manager();

Overriding Overloading Polymorphism

2 Class dan Object (1)

9/26/2011. Tujuan. Bekerja dengan Java Class Library. Pengenalan OOP. Pengenalan OOP. Class dan Object. Enkapsulasi

Polymorphism. Oleh : Agus Priyanto, M.Kom

Class & Object 2. Imam Fahrur Rozi

Overriding Overloading Polymorphism

E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom

Pemrograman Berbasis Objek (Polimorfisme)

Polymorphism. Materi ke-8 Pemrograman Berbasis Objek

Praktikum 8 Polymorphism

BAB 1 PENGENALAN PEMROGRAMAN BERORIENTASI OBJEK

BEKERJA DENGAN JAVA CLASS LIBRARY

Inheritance (Pewarisan) Pengertian dasar inheritance

Pengenalan OOP. Object-Oriented programming (OOP) Menitikberatkan pada konsep object sebagai elemen dasar dari program.

Object Oriented Programming (OOP) --Inheritance- Saniati STMIK Teknokrat, Bandar Lampung

KONSEP Pemrograman Berorientasi Objek KARMILASARI

Covered Topics. Course Map OOP Concept

Chapter 10 Polimorphism

Polymorphism (Polimorfisme)

JOBSHEET 8 INHERITANCE (PEWARISAN)

Pemrograman Berorientasi. Inheritance

KASUS INHERITANCE. (Window, Multithreading dan Applet)

Pemograman Berorientasi Objek. Week 3 Abstrak dan Interface dalam suatu kelas

Konsep Pemrograman Berbasis Obyek

Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak

POLIMORPHISM PEMROGRAMAN LANJUT. Dr. Eng. Herman Tolle. Sistem Informasi FILKOM UB Semester Genap 2016/2017

Pemrograman Berorientasi. Class dan Obyek 2

Modul Bahasa Pemrograman 1

Inheritance dan Kata Kunci static

Praktikum 4 Konsep Inheritance, Polymorphism, dan Encapsulation

CSG2H3 Object Oriented Programming. Polymorphism -RSM-

Pertemuan 11 Object Oriented Program

INHERITANCE AND POLIMORPHISM PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM

E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom

MODUL 6 PERULANGAN. A. String. 1. Instansiasi dan Inisialisasi. M0601xxyyy.jar

INHERITANCE. Pelatihan Java 2 Mei 2015 Fakultas Teknologi Informasi Program Studi Teknik Informatika

BAHASA PEMROGRAMAN JAVA

1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini:

Object Oriented Programming 1

Inheritance dan Polimorfisme

KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut:

1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference ke atribut turunan dari objek? super

Object Oriented Programming (OOP) --Polimorphisme-- Saniati STMIK Teknokrat, Bandar Lampung

MODUL 1 PRAKTIKUM PEMROGRAMAN BERORIENTASI OBYEK(PBO) KELAS DAN OBJEK. TGL PRAKTIKUM : 24 September 2012 :ACHMAD FAJAR NORULLAH NRP :

IKG2I4 / Software Project I

PEMROGRAMAN PHP DASAR

Pemrograman Lanjut. Class, dan Instance Variable. Aryo Pinandito, ST, M.MT Team Teaching Pemrograman Lanjut

BAB III PERANCANGAN PROGRAM

LAB PEMROGRAMAN I (JAVA FUNDAMENTAL) PERTEMUAN 3 Dosen : Bella Hardiyana S. Kom

Bahasa Pemrograman 2.

Pemrograman Berorientasi Objek / Object Oriented Programming / (OOP) Nur Hasanah, M.Cs

BAB 2. Class Thread. Setelah mempelajari modul ini peserta diharapkan dapat: Mengenal Kelas Thread Menggunakan Kelas Thread dalam aplikasi

Pemrograman Berorientasi Obyek. Ramos Somya

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

Pemrograman Lanjut. Constructor. Aryo Pinandito, ST, M.MT Team Teaching Pemrograman Lanjut

Object Oriented Programming LOGO

Konsep Pemrograman Berorientasi Obyek

Bahasa Pemrograman :: Polimorfism and Abstraction

Pengenalan Obyek. Arna Fariza. Materi

Konsep Dasar Pemrograman Berorientasi Objek

Composition dan Inheritance

DEVAL GUSRION, S.KOM, M.KOM MATAKULIAH BAHASA PEMOGRAMAN JAVA LANJUTAN III

PEMROGRAMAN JAVA. Yoannita, S.Kom. Class & Method sederhana Konsep Pemrograman Berorientasi Objek. Company LOGO

BAB 3 CLASS DAN OBJECT. Tujuan:

Pemrograman Lanjut. Instance Variable Access Modifier Set dan Get Method

Satuan Acara Perkuliahan (SAP) UNIVERSITAS GUNADARMA

Konsep Pemrograman Berorientasi Obyek. Maria Ulfah S Nurochman

BAB II TEORI DAN KONSEP PEMROGRAMAN BERBASIS OBJECT

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

Class & Object (1) Imam Fahrur Rozi

SUMBER BELAJAR PENUNJANG PLPG

MINGGU V : PBO (PEWARISAN)

Class & Object 2 ~Praktikum~ Imam Fahrur Rozi

Inheritance dan Polimorfisme

Operator dan Assignment

Konsep Pemrograman Berorientasi Obyek. Pertemuan 1

VI Pemrograman Berorientasi Obyek

Tujuan KONSEP PEMROGRAMAN BERORIENTASI OBJECT. Bahasa Prosedural. Topik OOP. Apakah OBYEK? 3/15/2012

Konsep Pemrograman Berorientasi Obyek

Praktikum Minggu VI 1 dan 2 Dasar-dasar Object Oriented Programming PHP

3 Class dan Object (2)

1 TEKNOLOGI OBJECT-RELATIONAL DBMS pada ORACLE 10g

IKG2I4 / Software Project I

Pertemuan 2 Bahasa Visual Basic Aplication

RENCANA PEMBELAJARAN SEMESTER PROGRAM STUDI SARJANA TERAPAN TEKNIK INFORMATIKA DEPARTEMEN TEKNIK INFORMATIKA DAN KOMPUTER

Design. Creational. Pattern. Adam Hendra Brata. Factory Method, Abstract Factory, Singleton

OBJECT ORIENTED PROGRAMMING DENGAN PHP. Janitra Panji

Pemrograman Berbasis Objek Operator dan Assignment

Pemrograman Berorientasi Obyek. Konsep OOP

Modul II Object Oriented Programming

Transkripsi:

POLIMORFISME

Topik Pengenalan Polimorfisme Implementasi Polimorfisme Virtual Method Invocation Hetegoneous Collection Polimorphic Arguments Instance of Operator Object Conversion (Casting Object)

PENGENALAN POLIMORFISME

Polimorfisme Diadopsi dari istilah Biologi, dimana suatu organisme bisa memiliki bentuk yang berbeda Jaguar Berwarna Terang Jaguar Berwarna Gelap

Polimorfisme Dalam OOP, Polimorfisme à Suatu objek yang bisa memiliki beberapa bentuk yang berbeda atau suatu objek yang bisa dibentuk ke dalam beberapa bentuk yang berbeda. Konsep Polimorfisme, ada hubungannya dengan Inheritance Maksudnya, Polimorfisme hanya bisa diterapkan pada objek dari suatu klas yang memiliki relasi inheritance

Contoh Polimorfisme

Contoh Polimorfisme

Contoh Polimorfisme

Contoh Polimorfisme Dari 3 klas di atas (Employee, Programmer dan Manager), dapat dilakukan instansiasi sbb: Atau mungkin juga dilakukan instansiasi sbb:

Polimorfisme Dari contoh pada slide sebelumnya terlihat ada objek emp yang dideklarasikan dari klas Employee. Kemudian emp diisi dengan objek dari klas Programmer (new Programmer()) Atau pada contoh berikutnya, emp diisi dengan objek dari klas Manager (new Manager()) Dapat diambil kesimpulan, bahwa objek emp, bisa dibentuk sebagai objek dari Programmer, atau bia juga dibentuk sebagai objek dari Manager Ini yang disebut Polimorfisme (emp bisa memiliki banyak bentu.)

Kesimpulan Polimorfisme Bentuk umum Polimorfisme: Employee emp = new Programmer(); Super klas Sub klas

IMPLEMENTASI POLIMORFISME

Pokok Bahasan Virtual Method Invocation (VMI) Heterogeneus Collection Polimorphic Arguments Operator instanceof Casting Object

Virtual Method Invocation (VMI) VMI terjadi ketika ada pemanggilan overriden method dari object polimorfisme Ciri-ciri: Method yang dipanggil adalah method overriden (method yang dioverride) Method tsb dipanggil dari objek polimorfisme

Contoh VMI

Contoh VMI Dari slide sebelumnya, dibuat objek sbb: Pegawai p = new Programmer(); p.tampildata(); Penjelasan: Objek p merupakan objek polimorfisme (dideklarasikan dari klas Pegawai, tapi kemudian diisi dengan objek dari Programmer atau subklas-nya) Method tampildata() adalah overriden method dari klas Pegawai, yang dioverride di subklasnya Ketika dipanggil p.tampildata(), maka compiler mengenali bahwa method tampildata() yang dimaksud adalah tampildata() dari Pegawai, tapi ketika di running, yang jalan adalah method tampildata() dari Programmer (karena objek p diinstansiasi sbg objek dari Programmer).

Format VMI Objek polimorfisme Pegawai p = new Programmer(); p.tampildata(); Overriden method (method superklas yang dioverride di subklasnya)

Heterogeneus Collection Dengan komsep polimorfisme, kita bisa membuat collection (Array) dimana array tsb bisa diisi dengan objek dengan bentuk yang berbeda-beda Contoh: Pegawai[] p = new Pegawai[5]; //buat array Pegawai p[0] = new Programmer(); p[1] = new Manajer(); p[2] = new Pegawai(); dst

Heterogeneus Collection Penjelasan: Array p dibuat sebagai array dari Pegawai (superklas) dengan panjang 5 Data pertama array p, atau p[0] diisi dengan objek dari Programmer (new Programmer()) Data kedua array p, atau p[1] diisi dengan objek dari Manajer(new Manajer()) dsb

Heterogeneus Collection Jika kita membuat array sbb: Programmer pro[] = new Programmer[5]; Maka array pro tsb tidak bisa dibuat heterogen collection, artinya array pro cuma bisa digunakan untuk menyimpan objek-objek dari Programmer saja (tidak bisa digunakan untuk menyimpan objek dari Manajer misalnya)

Polymorphic Argument Konsep polimorfisme yang diterapkan pada argumen fungsi

Polymorphic Argument Polimorphic argument Method hitunggajitotal(pegawai p), memiliki argumen p yang berupa objek dari Pegawai Ketika pemanggilan fungsi hitunggajitotal(), bisa dilewatkan nilai argumen berupa objek dari Programmer maupun Manajer Seperti hitunggajitotal(pr) à pr merupakan objek dari Programmer, atau hitunggajitotal(m) à m merupakan objek dari Manajer

Instanceof Adalah operator yang digunakan untuk mengetahui apakah suatu objek adalah hasil instansiasi dari suatu klas tertentu Akan menghasilkan nilai true atau false Jika p merupakan objek dari klas Programmer maka, akan bernilai true

Instanceof Contoh: pada pemanggilan fungsi hitunggajitotal(pr), dilewatkan objek pr yang merupakan objek dari Programmer. Maka operasi p instanceof Programmer akan bernilai true

Casting Object Digunakan untuk mengubah bentuk objek Contoh: Pegawai p = new Programmer(); Programmer pro = (Programmer) p; Objek p di casting ke Programmer

Casting Object Penjelasan: Objek p merupakan objek polimorfisme, dimana p dideklarasikan dari Pegawai, tapi kemudian diinstansiasi dari klas Programmer. Oleh compiler, p tetap dikenali sebagai objek dari Pegawai, meskipun kedalamnya/dibentuk sebagai objek dari Programmer. Sehingg, atribut p yang dikenali oleh compiler adalah atribut Pegawai. Atribut bonus, tidak dikenali. Agar atribut bonus dikenali, maka p harus dicasting menjadi Programmer

Casting Object