Modul 1
Pewarisan, Polimorfisme, dan Interface
Disusun oleh
Jember , 04 – 02 - 2020
Disetujui
PENDAHULUAN
Inheritance (pewarisan) adalah sebuah cara mewariskan atau menurunkan atribut atau
method yang di miliki oleh superclass (induk) kepada subclassnya. Superclass merupakan
class induk yang akan mewariskan apa yang di milikinya. Sedangkan subclass
merupakan class yang di warisi oleh superclass. Sehingga subclass dapat memiliki apa
saja yang ada pada superclassnya. Untuk mendefinisikan superclass dapat menggunakan
keyword extends. Sedangkan untuk memanggil constructor superclass cukup
menggunakan keyword super.
1.2 Tujuan
1. Mahasiswa dapat mengembangkan program java dengan mengimplementasikan
konsep Pewarisan (superclass, subclass, keyword super, keyword final)
2. Mahasiswa dapat mengembangkan program java dengan mengimplementasikan
konsep Polimorfisme
3. Mahasiswa dapat mengembangkan program java dengan mengimplementasikan
konsep abstrac class, dan Interface
1.3 Manfaat
1. Mahasiswa dapat mengembangkan program java dengan mengimplementasikan
konsep Pewarisan, Polimorfisme, dan Interface
BAB II
DASAR TEORI
Suatu class dapat mewariskan sifat dari class yang sudah ada. Class ini dinamakan
subclass dan induk class dinamakan superclass. Kita juga akan membicarakan sifat khusus
dari Java dimana kita dapat secara otomatis memakai method yand tepat untuk setiap object
tanpa memperhatikan asal darisubclass object. Sifat ini dinamakan polimorfisme. Pada
akhirnya, kita akan mendiskusikan tentang interface yang membantu mengurangi penulisan
program.
Dalam Java, semua class, termasuk class yang membangun Java API, adalah subclasses dari
Pewarisan adalah keuntungan besar dalam pemrograman berbasis object karena suatu
sifat atau method didefinisikan dalam superclass, sifat ini secara otomatis diwariskan dari
semua subclasses. Jadi, Anda dapat menuliskan kode method hanya sekali dan mereka dapat
digunakan oleh semua subclass. Subclass hanya butuh mengimplementasikan perbedaannya
sendiri dan induknya. Interface adalah jenis khusus dari blok yang hanya berisi method
signature(atau constant ). Interface mendefinisikan sebuah(signature) dari sebuah kumpulan
method tanpa tubuh. Interface mendefinisikan sebuah cara standar dan umum dalam
Public class Person adalah class induk karena di dalamnya tidak terdapat
fungsi main() dan class ini terdiri dati method-method yang akan diturunkan
kepada kelas Student
Pada line 15 dan 16 terdapat atribut name dan address yang dideklarasikan
sebagai protected. Kita menggunakan protected agar atribut-atribut yang ada
dapat di akses di Supesclass dan Subclass, jika kita menggunakan private
maka Subclass tidak dapat menggunakannya. Karena private hanya bisa
digunakan di kelas itu sendiri.
Pada line 38-43 merupakan method yang mengembalikkan nilai pada fungsi
atau method kita, kemudian nilai kembalian tersebut sesuai dengan tipe data
yang digunakan.
b. Subclass
Sekarang kita tambahkan class baru yang diberi nama “Student”, karena Student
juga sebagai Person, maka kita hanya akan meng-extends class Person, sehingga
kita dapat mewariskan semua property dan method yang ada di class Person. Di
bawah ini scrip untuk membuat Subclass “Stud
Pada line 12 terdapat sebuah class turunan dari Superclass atau kelas induk
“Person”.
Pada line 24 terdapat method utama dari class “Student” dan didalam method
tersebut terdapat sebuah objek dangan nama “anna”.
2. Polimorphisme
Program dibawah adalah contoh program dengan nama class Person, yang befungsi
sebagai class induk yaitu sebuah class yang atributnya dapat diakses oleh subclass
dari superclass.
Pada program diatas ditambahkan subclass lain pada class induk Person yaitu
Student.
Program diatas ditambahkan sublclass pada induk class Person dan subclass
Strudent, yaitu subclass Employee.
Class ini akan mengakses atribut yang ada pada class Person dan subclass
Employee.
3. Menampilkan Abstract Class
Abstract Class adalah sebuah class yang tidak bisa di-instansiasi (tidak bisa dibuat
menjadi objek) dan berperan sebagai ‘kerangka dasar’ bagi class turunannya. Di
dalam abstract class umumnya akan memiliki abstract method.
Code program diatas membuat kelas abstrak Shape dan constructor default yaitu
Shape. Contructor sendiri adalah method khusus yang akan dieksekusi pada saat
pembuatan objek (instance). Biasanya method ini digunakan untuk inisialisasi atau
mempersiapkan data untuk objek. Abstract method pada program ini tidak memiliki
body, method ini akan diinisialisasi nantinya pada subclass yang mewarisi kelass
abstract Shape ini. Semua abstract method yang ada pada class abstract harus
diimplementasikan semua oleh subclass.
Keyword extends adalah keyword yang digunakan oleh subclass ketika melakukan
pewarisan terhada super class
BAB IV
KESIMPULAN
JAVA termasuk kedalam bahasa pemrograman yang berbasis objek(OOP)
dimana didalamnya terdapat berbagai sifat-sifat yang unik dalam pemrogramannya,
seperti : inheritance, polymorphism, dan Interface. Polymorphisme meruapakan salah
satu sifat yang unik dalam bahasa pemrograman yang berbasis objek khususnya java,
sifat ini sangat membantu programmer dalam memanipulasi program agar lebih
mudah dan efisien. Sifat ini juga sangat terkait dengan kedua sifat lainnya yaitu
encapsulation dan inheritance. Misalnya hubungan dengan inheritance, untuk
mengoverride sebuah method yang ingin di-polymorphisme harus menggunakan sifat
inheritance. Polimorfisme terdiri dari 2 jenis, yaitu dengan menggunakan fungsi
override dan overload method, yang masing-masing memiliki kemampuan dan syarat
yang berbeda. Dengan kedua fungsi tersebut memungkinkan terciptanya berbagai
bentuk dari satu objek.
DAFTAR PUSTAKA
Jeni. 2014. Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
https://fdokumen.com/document/jeni-intro1-bab11-pewarisan-polimorfisme-dan-
interface.html(diakses 04 Februari 2020)