FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

dokumen-dokumen yang mirip
INHERITANCE AND POLIMORPHISM PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM

Gambar 1: Hirarki class

Pewarisan, Polimorfisme, dan Interface

1.Tujuan. 2. Latar Belakang. Mendefinisikan superclasses dan subclasses Override method dari superclasses Membuat method final dan class final

Polymorphism (Polimorfisme)

Inheritance (Pewarisan) Pengertian dasar inheritance

IT652 Pemrograman Berorientasi Aspek. Ramos Somya

3/31/2011. Tujuan. Inheritance, Polymorphism,& Interfaces. Inheritance / pewarisan. Inheritance / pewarisan. Inheritance / pewarisan

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

KONSEP OOP: POLYMORPHISM

Bahasa Pemrograman :: Polimorfism and Abstraction

Chapter 10 Polimorphism

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

KONSEP OOP: POLYMORPHISM

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

Review PBO. Ramos Somya

Polymorphism. Materi ke-8 Pemrograman Berbasis Objek

:: abstract class + interface. :: abstract class

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

2015 BAHASA PEMROGRAMAN I. Pertemuan VI Inheritance (Pewarisan)

MODUL 3. Inheritance, Abstract Class, Interface TUJUAN PRAKTIKUM LANDASAN TEORI. A. Inheritance

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

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

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

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

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

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK

8 - Overriding dan Overloading

Pemrograman Berorientasi Objek 2

Inheritance dan Kata Kunci static

Modul Bahasa Pemrograman 1

Abstract Class dan Interface. Viska Mutiawani, M.Sc

Pemrograman Berorientasi. Abstract & Interface

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

Bahasa Pemrograman 2.

Praktikum 4 Konsep Inheritance, Polymorphism, dan Encapsulation

Konsep Pemrograman Berbasis Obyek

(INHERITANCE) Nurochman

PRAKTIKUM I Class dan Obyek

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

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

Bahasa Pemrograman 2.

PENGHITUNGAN JARI-JARI PADA OBJEK LINGKARAN DALAM BAHASA JAVA

PERTEMUAN 13 PERANCANGAN BERORIENTASI OBJEK UNTUK MULTI KELAS

MINGGU V : PBO (PEWARISAN)

Polymorphism. Oleh : Agus Priyanto, M.Kom

IKG2I4 / Software Project I

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

PRAKTIKUM 6 EXCEPTION

PERCOBAAN 6 EXCEPTION

Bahasa Pemrograman :: Inheritance

Encapsulation (Encapsulasi) Minggu 5 Pemrograman Berorientasi Objek Alfa Faridh Suni

Inheritance (Pewarisan Sifat) Imam Fahrur Rozi

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

Pemrograman Berorientasi. Inheritance

Pewarisan atau Inheritance

KONSEP OOP: PEWARISAN / INHERITANCE

Pewarisan Sifat Objek. Nur Hasanah, M.Cs

Percobaan 6 Exception

Pemrograman Berorientasi. Polimorfisme dan Binding

LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK MODUL 3 ABSTRAKSI

JOBSHEET POLIMORFISME

Object Oriented Programming 1

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

Konsep Dasar Pemrograman Berorientasi Objek

Praktikum 3 Konsep Class, Attribute dan Method

KONSEP OOP: PEWARISAN / INHERITANCE

Pertemuan 2 (2) : Membuat Class dan mengakses Anggota Class

BAB 7 OVERLOADING DAN OVERRIDING

Pemrograman Berorientasi Objek Danu Wira Pangestu

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

ABSTRACT & INTERFACE. Pemrograman Lanjut Herman Tolle

INHERITANCE. Gambar 1. Kelas Hierarki Java

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

LAPORAN RESMI INHERITANCE

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

MEMBUAT KELAS SENDIRI. Dewi Sartika, M.Kom

Pemrograman Berorientasi Objek (PBO) By : Jeffry Montolalu, ST PERTEMUAN XIII POLYMORPHISM

Konsep Pemrograman Berorientasi Obyek. Maria Ulfah S Nurochman

Employee employee=new Manager();

2. Software yang dibutuhkan Untuk membuat sebuah program java, minimal yang dibutuhkan adalah:

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

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

Praktikum 6 Abstract, Interface, Overloading, Overriding, dan Package

PERTEMUAN 5 OOP. Objektif : Praktikan mengetahui konsep OOP. Praktikan dapat membuat program sederhana dengan konsep OOP.

Pemrograman Berbasis Objek Inheritance

Membuat dan Menggunakan Class

IKG2I4 / Software Project I

Modul Praktikum 4 Pemograman Berorientasi Objek

TUGAS DASAR PEMROGRAMAN KELAS C DOSEN PENGAMPU : IKA ATSARI DEWI, STP, MP

Score: Persentase: % ~ u ~ Generated by Foxit PDF Creator Foxit Software For evaluation only.

BAB 5 Mendapatkan Input dari Keyboard

Tabel 1. Instruksi untuk menampilkan teks No. Bahasa Pemrograman Instruksi 1. Pascal WRITE ( Bahasa pemrograman itu mudah );

Praktikum. PBO (Kelas K) Oleh : MOHAMMAD SHOLIKIN

BAB 5 Mendapatkan Input dari Keyboard

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

Transkripsi:

No. LST/EKA/PTI208/05 Revisi : 01 Maret 2009 Hal 1 dari 5 A. Kompetensi Setelah mengikuti mata kuliah ini, mahasiswa diharapkan mampu memahami prinsip polymorphism. B. Dasar Teori 1. Abstract Class Misalnya kita ingin membuat superclass yang mempunyai method tertentu yang berisi implementasi, dan juga beberapa method yang akan di-overridden oleh subclasses nya. Sebagai contoh, kita akan membuat superclass bernama LivingThing. class ini mempunyai method tertentu seperti breath, eat, sleep, dan walk. Akan tetapi, ada beberapa method di dalam superclass yang sifatnya tidak dapat digeneralisasi. Kita ambil contoh, method walk. Tidak semua kehidupan berjalan(walk) dalam cara yang sama. Ambil manusia sebagai misal, kita manusia berjalan dengan dua kaki, dimana kehidupan lainnya seperti anjing berjalan dengan empat kaki. Akan tetapi, beberapa ciri umum dalam kehidupan sudah biasa, itulah kenapa kita inginkan membuat superclass umum dalam hal ini. Kita dapat membuat superclass yang mempunyai beberapa method dengan implementasi sedangkan yang lain tidak. Class jenis ini yang disebut dengan class abstract. Sebuah class abstract adalah class yang tidak dapat di-instantiate. Seringkali muncul di atas hirarki class pemrograman berbasis object, dan mendefinisikan keseluruhan aksi yang mungkin pada object dari seluruh subclasses dalam class. Method ini dalam class abstract yang tidak mempunyai implementasi dinamakan method abstract. Untuk membuat method abstract, tinggal menulis deklarasi method tanpa tubuh class dan digunakan menggunakan kata kunci abstract. Contohnya, public abstract void somemethod(); Sekarang mari membuat contoh class abstract. public abstract class LivingThing public void breath() System.out.println("Living Thing breathing..."); public void eat() System.out.println("Living Thing eating...");

No. LST/EKA/PTI208/05 Revisi : 01 Maret 2009 Hal 2 dari 5 /** * abstract method walk * Kita ingin method ini di-overridden oleh subclasses */ public abstract void walk(); Ketika class meng-extend class abstract LivingThing, dibutuhkan untuk override method abstract walk(), atau lainnya, juga subclass akan menjadi class abstract, oleh karena itu tidak dapat di-instantiate. Contohnya, public class Human extends LivingThing public void walk() System.out.println("Human walks..."); Jika class Human tidak dapat overridde method walk, kita akan menemui pesan error berikut ini, Human.java:1: Human is not abstract and does not override abstract method walk() in LivingThing public class Human extends LivingThing ^ 1 error 2. Polimorfisme Class induk Person memiliki dua buah subclass yaitu Student dan Employee. Di bawah ini adalah hierarkinya, Dalam Java, kita dapat membuat referensi yang merupakan tipe dari superclass ke sebuah object dari subclass tersebut. Sebagai contohnya, Person ref;

No. LST/EKA/PTI208/05 Revisi : 01 Maret 2009 Hal 3 dari 5 ref = studentobject; //Person menunjuk kepada // object Student //beberapa kode di sini Sekarang dimisalkan kita punya method getname dalam superclass Person kita, dan kita override method ini dalam kedua subclasses Student dan Employee, public class Person public String getname() System.out.println( Person Name: + name); public class Student extends Person public String getname() System.out.println( Student Name: + name); public class Employee extends Person public String getname() System.out.println( Employee Name: + name); Kembali ke method utama kita, ketika kita mencoba memanggil method getname dari reference Person ref, method getname dari object Student akan dipanggil. Sekarang, jika kita berikan ref ke object Employee, method getname dari Employee akan dipanggil. Person ref; ref = studentobject; //Person menunjuk kepada // object Student String temp = ref.getname(); //getname dari Student //class dipanggil

No. LST/EKA/PTI208/05 Revisi : 01 Maret 2009 Hal 4 dari 5 System.out.println( temp ); ref = employeeobject; //Person menunjuk kepada // object Employee String temp = ref.getname(); //getname dari Employee / /class dipanggil System.out.println( temp ); Kemampuan dari reference untuk mengubah sifat menurut object apa yang dijadikan acuan dinamakan polimorfisme. Polimorfisme menyediakan multiobject dari subclasses yang berbeda untuk diperlakukan sebagai object dari superclass tunggal, secara otomatis menunjuk method yang tepat untuk menggunakannya ke particular object berdasar subclass yang termasuk di dalamnya. Contoh lain yang menunjukkan properti polimorfisme adalah ketika kita mencoba melalui reference ke method. Misalkan kita punya method static printinformation yang mengakibatkan object Person sebagai reference, kita dapat me-reference dari tipe Employee dan tipe Student ke method ini selama itu masih subclass dari class Person. printinformation( studentobject ); printinformation( employeeobject ); public static printinformation( Person p ).... C. Alat/ Bahan 1. Lab. Sheet Pemrograman Java 5 2. PC / Laptop with OS installed 3. JDK 1.5 or latest 4. J-Creator or text editor D. Langkah Kerja 1. Baca dan pahami dasar teori di atas. 2. Lakukan kompilasi dan eksekusi terhadap contoh-contoh source code atau program yang ada di dasar teori dan LAMPIRAN. 3. Kerjakan tugas individu di bawah. E. Tugas Individu

No. LST/EKA/PTI208/05 Revisi : 01 Maret 2009 Hal 5 dari 5 Buatlah class abstract Geometri yang memiliki dua buah abstract method yaitu hitungkeliling() dan hitungluas(). Buatlah subclass-subclass dari class Geometri sebagai berikut: a. Class SegiEmpat b. Class SegiTiga c. Class Lingkaran Masing-masing subclass memliki method tambahan untuk mengakses, mengubah dan menampilkan atribut yang dimilikinya. Kemudian buatlah sebuah class untuk menguji class-class yang dibuat di atas. Gunakanlah polimorfisme dalam class penguji ini. F. Lampiran CH 51 & CH 52 (Introduction to Computer Science using Java, Java 5.0 version, January 2006, Bradley Kjell, Central Connecticut State University http://chortle.ccsu.edu/cs151/cs151java.html) Java How to Program, Sixth Edition, H. M. Deitel - Deitel & Associates, Inc., P. J. Deitel - Deitel & Associates, Inc