8 - Overriding dan Overloading

dokumen-dokumen yang mirip
PEWARISAN. Disusun Oleh: Reza Budiawan. Untuk: Tim Dosen Algoritma & Pemrograman Lanjut

IKG2I4 / Software Project I

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

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

INHERITANCE AND POLIMORPHISM PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM

Inheritance (Pewarisan) Pengertian dasar inheritance

PEMROGRAMAN BERORIENTASI OBJEK

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

7 Inheritance. + berjalan() + berhenti PENDAHULUAN

JOBSHEET POLIMORFISME

Inheritance dan Kata Kunci static

IT652 Pemrograman Berorientasi Aspek. Ramos Somya

ABSTRACT CLASS. Imam Fahrur Rozi

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

Polymorphism. Materi ke-8 Pemrograman Berbasis Objek

Composition dan Inheritance

Object Oriented Programming 1

Class & Object 2 ~Praktikum~ Imam Fahrur Rozi

Inheritance (Pewarisan Sifat) Imam Fahrur Rozi

Bahasa Pemrograman :: Polimorfism and Abstraction

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

BAB 7 OVERLOADING DAN OVERRIDING

JOBSHEET 8 INHERITANCE (PEWARISAN)

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

PERTEMUAN 13 PERANCANGAN BERORIENTASI OBJEK UNTUK MULTI KELAS

MINGGU V : PBO (PEWARISAN)

BAB 6 INHERITANCE Tujuan:

KONSEP OOP: PEWARISAN / INHERITANCE

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

:: abstract class + interface. :: abstract class

Pertemuan 11 Object Oriented Program

Bahasa Pemrograman :: Inheritance

Polymorphism. Oleh : Agus Priyanto, M.Kom

KONSEP OOP: PEWARISAN / INHERITANCE

Pewarisan atau Inheritance

Jobsheet 09. Overloading and Overriding Method

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

Class & Object 2. Imam Fahrur Rozi

Praktikum Inheritace PERCOBAAN 1 Tujuan: Prosedur Percobaan:

PRAKTIKUM I Class dan Obyek

Pemrograman Berorientasi. Polimorfisme dan Binding

Pemrograman Berorientasi. Inheritance

Bahasa Pemrograman 2.

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

Konstruktor dan Polimorfisme

KONSEP OOP: POLYMORPHISM

subclass class manapun private default protected public package yang sama

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK MODUL 3 ABSTRAKSI

Pemrograman Berorientasi Objek Polimorphisme dan Serious Polimorphisme. Adam Mukharil Bachtiar Teknik Informatika UNIKOM

LAPORAN RESMI INHERITANCE

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

KONSEP OOP: PEWARISAN / INHERITANCE

2015 BAHASA PEMROGRAMAN I. Pertemuan VI Inheritance (Pewarisan)

Bahasa Pemrograman 2.

Praktikum 4 Konsep Inheritance, Polymorphism, dan Encapsulation

Gambar 1: Hirarki class

Pemrograman Berorientasi. Abstract & Interface

KONSEP OOP: POLYMORPHISM

MODUL 3 PEWARISAN TUJUAN DASAR TEORI

Pemrograman Berorientasi Obyek. Ramos Somya

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

Class Diagram (Class, Association,Aggregation,Compositon,Generalization,Multiplicity)

Konsep Dasar Pemrograman Berorientasi Objek

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

PEWARISAN D E W I S A R T I K A, M. K O M

(INHERITANCE) Nurochman

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

Pewarisan, Polimorfisme, dan Interface

Bahasa Pemrograman 2.

OVERLOADING, CONSTRUCTOR DAN DESTRUCTOR. Dewi Sartika, M.Kom

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK

PENGHITUNGAN JARI-JARI PADA OBJEK LINGKARAN DALAM BAHASA JAVA

BAB IV KONSEP PEMROGRAMAN BERORIENTASI OBJEK

public class B extends A {... }

SILABUS MATA KULIAH PEMROGRAMAN JAVA

KASUS INHERITANCE. (Window, Multithreading dan Applet)

PRAKTIKUM 3 KONSTRUKTOR DAN OVERLOADING

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

PRAKTIKUM 3 KONSTRUKTOR DAN OVERLOADING

Overriding Overloading Polymorphism

BAB II TEORI DAN KONSEP PEMROGRAMAN BERBASIS OBJECT

INHERITANCE. Gambar 1. Kelas Hierarki Java

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

Review PBO. Ramos Somya

STRUKTUR DENGAN ARRAY DAN FUNCTION

Pendahuluan Rekayasa Perangkat Lunak II. Alif Finandhita. Teknik Informatika UNIKOM

INSTALL JAVA. 2. Kemudian akan muncul tampilan dalam bentuk rar. Klik ganda pada jdk-7u45-windows- i586.exe, seperti gambar berikut :

REKAYASA PERANGKAT LUNAK II

Bahasa Pemrograman II Modul 2 : Inheritance dan Interface

Pemrograman Lanjut Review Class dan Object PTIIK

Konsep Pemrograman Berbasis Obyek

MODUL 6. PEMROGRAMAN VISUAL BASIC.NET DENGAN OOP (II) dan STRING

Pemrograman Berorientasi. Class dan Obyek 2

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

3 Class dan Object (2)

Inheritance dan Polimorfisme

Sebagai contoh misalnya akan dibuat kelas turunan Silinder dari kelas dasar Lingkaran, maka dapat dituliskan :

Pemrograman Berorientasi Objek Danu Wira Pangestu

Praktikum 3 Konsep Class, Attribute dan Method

Transkripsi:

8 - Overriding dan Overloading PENDAHULUAN Pada bagian sebelumnya, telah dibahas tentang relasi inheritance. Dalam relasi tersebut, dimungkinkan suatu class (super class) untuk diturunkan ke class yang lain (sub class). Dan akibat dari turunan tersebut, atribut dan method dari super class akan diturunkan atau diwariskan ke sub class. Dengan kata lain, sub class akan memiliki atribut dan method yang diwariskan dari super class. Ada kalanya, sub class perlu untuk memodifikasi isi dari method yang telah diwarisi dari super class. Tujuanya adalah agar method yang diwarisi tersebut bisa memiliki proses yang lebih spesifik untuk sub class. Konsep tersebut disebut sebagai overriding method. Overriding method merupakan kemampuan sub class untuk memodifikasi atau mendefinisikan method yang sudah diwarisi dari super class, sehingga method tersebut bisa memiliki atau melakukan proses yang lebih spesifik. Contoh di bawah ini akan memberikan ilustrasi proses overriding. Class Dog merupakan sub class dari Animal. Class Dog mewarisi method move() dari Animal. Isi dari method move() dari class Animal masih sangat umum, yaitu ia akan menampilkan kalimat Animals can move. Ketika method move() tersebut diwariskan ke class Dog, maka perlu dimodifikasi isinya, sehingga bisa menjadi lebih spesifik dan sesuai untuk Dog. Oleh karena itu, isi method move() di dalam class Dog dimodifikasi atau disesuaikan menjadi Dogs can walk and run. Dengan kata lain, method move() yang diturunkan oleh Animal, di- override oleh class Dog. Method yang meng- override (yang ada di subclass) dikenal dengan overriding method, sedangkan method yang di- override (yang ada di superclass) dikenal dengan overridden method. Syarat terjadinya overriding method: Overiding method dilakukan di dalam subclass Nama method, tipe data method dan daftar argument/parameter overriding method harus sama dengan overridden method

Modifier access dari overriding method, harus sama atau lebih luas daripada modifier access dari overridden method PERCOBAAN 1 : Overriding Tujuan: 1. Memahami konsep overriding 2. Memahami kapan overriding digunakan 3. Memahami ciri- ciri overriding method 4. Bisa mengimplementasikan konsep overriding Prosedur Percobaan: 1. Buatlah klas di dalam paket overriding sesuai dengan diagram klas di bawah ini: Ketr : Method hitungluas() dan hitungkeliling() di klas SegiTigaSamaKaki, SegiEmpat, dan Lingkaran, isinya merupakan operasi perhitungan luas dan keliling masing- masing jenis bangundatar. Rumusnya menyesuaikan dengan rumus luas dan keliling bangun datar yang bersangkutan.

2. Tampilan program kurang lebih seperti di bawah ini: - Klas BangunDatar - Klas SegitigaSamaKaki

- Klas SegiEmpat - Klas Lingkaran

3. Buatlah klas Main Kemudian jalankan klas tersebut, dan perhatikan hasil keluarannya 4. Jawablah pertanyaan di bawah ini: a. Method apakah dari klas SegitigaSamaKaki yang merupakan method overriding? b. Method apakah dari klas SegiEmpat yang merupakan method overriding? c. Method apakah dari klas Lingkaran yang merupakan method overriding?

d. Method apakah dari klas BangunDatar yang di- override (overridden method)? e. Mengapa diperlukan overriding method (sebagaimana disebutkan pada jawaban soal a, b dan c) pada class SegitigaSamaKaki, SegiEmpat dan Lingkaran? f. Perhatikan klas SegiEmpat, apakah ada di dalam klas tersebut method yang BUKAN overriding method? Jika ada, sebutkan! g. Misal pada klas SegitigaSamaKaki nama method hitungluas() diubah menjadi hitungluassegitigasamakaki(), apakah masih disebut sebagai overriding method? Mengapa? h. Kalau demikian, apa saja ciri- ciri method overriding? i. Dari percobaan dan pertanyaan- pertanyaan tersebut, tarik kesimpulan mengenai overriding.

PERCOBAAN 2 : Overloading Tujuan: 1. Memahami konsep overloading 2. Memahami kapan overloading digunakan 3. Memahami ciri- ciri overloading method 4. Bisa mengimplementasikan konsep overloading Prosedur Percobaan: 1. Di dalam paket overloading, buatlah klas sesuai dengan diagram klas di bawah ini! Perhatikan bahwa di semua klas hanya memiliki KONSTRUKTOR DEFAULT.

2. Perubahan pada kode program: - Klas BangunDatar - Klas SegiTigaSamaKaki

- Klas SegiEmpat

- Klas Lingkaran 3. Buat juga di method main() di klas Main Jalankan program dan amati hasilnya:

4. Jawablah pertanyaan di bawah ini: a. Method apa sajakah dari klas SegiEmpat yang merupakan method overloading? b. Method apa sajakah dari klas SegitigaSamaKaki yang merupakan method overloading? c. Method apa sajakah dari klas Lingkaran yang merupakan method overloading? d. Apabila dalam klas SegiEmpat ditambahkan method public void hitungluas(double x, double y){..} apa yang terjadi? Apakah method yang baru saja ditambahkan tadi merupakan method overloading? Jelaskan jawaban anda e. Masih di klas SegiEmpat, missal ditambahkan method public void hitungluas(double x){.} apa yang terjadi? Apakah method yang baru saja ditambahkan tadi merupakan method overloading? Jelaskan jawaban anda f. Sebutkan ciri- ciri method overloading!

g. Dari hasil percobaan dan pertanyaan di atas tarik kesimpulan tentang overloading!