Anda di halaman 1dari 11

Laboratorium Rekayasa Perangkat Lunak

Jurusan Teknik Informatika


ITATS

BAB 6
POLYMORPHISM

Polymorphism (polymorfisme) dalam konsep OOP


memungkinkan suatu objek memiliki beberapa bentuk (sifat) yang
berbeda yaitu dengan cara Overloading dan Overriding namun
secara proses berbeda.
1. Overloading
 Overloading hanya dilakukan di dalam class
 Overloading dapat dilakukan pada Constructor dan
Method
 Constructor atau Method yang melakukan overload
harus memiliki nama yang sama
 Constructor atau Method yang melakukan overload
harus mengubah parameter list
 Constructor atau Method yang melakukan overload
boleh mengubah level hak akses (access modifier)
 Method yang melakukan overload boleh mengubah tipe
kembalian (return type)
 Constructor atau Method yang melakukan overload
boleh mengubah level hak akses (access modifier)
 Method yang melakukan overload boleh mengubah tipe
kembalian (return type)

Modul Praktikum Pemrograman Berorientasi Objek i


Laboratorium Rekayasa Perangkat Lunak
Jurusan Teknik Informatika
ITATS

Contoh langkah-langkah penerapan overloading pada


pemrograman Java.
a. Pastikan telah membuat project “Java Application”

ii Modul Praktikum Pemrograman Berorientasi Objek


Laboratorium Rekayasa Perangkat Lunak
Jurusan Teknik Informatika
ITATS

b. Buat class baru bernama Bird dan tambahkan 2 method fly

c. Pada class main gunakan kedua method pada class Bird

Modul Praktikum Pemrograman Berorientasi Objek iii


Laboratorium Rekayasa Perangkat Lunak
Jurusan Teknik Informatika
ITATS

2. Overriding
Overriding memungkinkan suatu objek dapat
menurunkan atau mewariskan sifat ke objek lain akan tetapi
bisa saja memiliki cara kerja yang berbeda dengan syarat
kedua objek memiliki hubungan, seperti superclass dan
subclass (Inheritance). Dengan demikian subclass dapat
memiliki sifat yang lebih spesifik dari superclass. Method
yang di-override bisa juga disebut overridden.
 Overriding hanya dapat dilakukan pada class lain yang
telah memiliki hubungan

 Overriding hanya dapat dilakukan pada Method


 Method yang akan di-override harus berada pada super-
class
 Method yang meng-override harus berada pada sub-class
 Method yang meng-override harus memiliki tipe data
(return type), nama dan parameter (jumlah dan urutan)
yang sama.
 Level hak akses method yang meng-override tidak boleh
lebih sempit dari method yang di-override
 Method yang telah di-override pada sub-class dapat
dioverload
 Method dengan final dan static tidak dapat di-override
 Notasi @Override bersifat opsional (biasa digunakan
pada Netbeans IDE)

iv Modul Praktikum Pemrograman Berorientasi Objek


Laboratorium Rekayasa Perangkat Lunak
Jurusan Teknik Informatika
ITATS

 Method pada super class yang dapat di-override hanya


yang ber-access modifier tertentu

Contoh langkah-langkah penerapan overriding pada


pemrograman Java.
a. Pastikan telah membuat project “Java Application”
b. Buat class baru bernama MilitaryUnit dan berikan
method attack

Modul Praktikum Pemrograman Berorientasi Objek v


Laboratorium Rekayasa Perangkat Lunak
Jurusan Teknik Informatika
ITATS

c. Buat class baru bernama Swordsman yang extends ke


MilitaryUnit dan tambahkan method attack

d. Buat class baru bernama Archer extends ke MilitaryUnit


dan tambahkan method attack

vi Modul Praktikum Pemrograman Berorientasi Objek


Laboratorium Rekayasa Perangkat Lunak
Jurusan Teknik Informatika
ITATS

e. Pada class main jalankan method attack pada class


Swordman dan Archer

Modul Praktikum Pemrograman Berorientasi Objek vii


BAB 7
ENCAPSULATION

Enkapsulasi pada Java adalah suatu proses


pembungkusan data (atribut) dan aksinya (method) menjadi
satu. Dengan demikian maka data tidak akan bisa diakses
oleh class lain dan hanya dapat diakses melalui method pada
class yang sama. Nama lain enkapsulasi adalah Infromation
Hiding/Data Hiding. Selain itu enkapsulasi juga memerlukan
access modifier untuk penerapannya

Contoh langkah-langkah penerapan enkapsulasi pada pemrograman


Java

 Atribut harus dideklarasikan menggunakan level modifier


“private”
 Menambahkan method accessor (getter/read-only) dan mutator
(setter/write-only)
Berikut langkah-langkah dalam menerapkan Enkapsulasi

Modul Praktikum Pemrograman Berorientasi Objek 1


1. Buat class baru bernama Mahasiswa dan isikan beberapa
atribut private, method accessor dan mutator

2. Pada class main instansiasikan class Mahasiswa.


Kemudian gunakan method accessor dan mutator serta
panggil method praktikum
Manfaat utama teknik encapsulation adalah kita
mampu memodifikasi kode tanpa merusak kode yang telah
digunakan pada class lain. Enkapsulasi memiliki manfaat
sebagai berikut:
1. Modularitas
Source code dari sebuah class dapat dikelola secara
independen dari source code class yang lain. Perubahan
internal pada sebuah class tidak akan berpengaruh bagi
class yang menggunakannya.
2. Information Hiding

Modul Praktikum Pemrograman Berorientasi Objek 3


Penyembunyian informasi yang tidak perlu
diketahui objek lain.

Anda mungkin juga menyukai