Anda di halaman 1dari 12

LAPORAN PRAKTIKUM

PEMROGRAMAN BERBASIS DESKTOP

Modul 1
Pewarisan, Polimorfisme, dan Interface

Disusun oleh

Nama : Makhmuda Nurul Khasana


NIM/Golongan : E31190270 / A
Kelompok :-
Asisten : Intan Permatasari
Dosen Pengampu : DiditR.Hartadi, S.Kom, MT

Jember , 04 – 02 - 2020

Disetujui

Laboratorium Rekayasa Perangkat Lunak


Jurusan Teknologi Informasi
Politeknik Negeri Jember
2020
BAB I

PENDAHULUAN

1.1 Latar Belakang

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

superclass Object. Contoh hirarki class diperlihatkan di bawah ini.


Beberapa class di atas class utama dalam hirarki class dikenal sebagai superclass. Sementara
beberapa class di bawah class pokok dalam hirarki class dikenal sebagai subclass dari class
tersebut.

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

menetapkan sifat-sifat dari class-class. Mereka menyediakan class-class, tanpa


memperhatikan lokasinya dalam hirarki class, untuk mengimplementasikan sifat-sifat yang
umum. Dengan catatan bahwa interface-interface juga menunjukkan polimorfisme,
dikarenakan program dapat memanggil method interface dan versi yang tepat dari method
yang akan dieksekusi tergantung dari tipe object yang melewati pemanggil method
interface.Sekarang, class induk Person dan subclass Student dari contoh sebelumnya, kita
tambahkan subclass lain dari Person yaitu Employee. Di bawah ini adalah hierarkinya,
Dalam Java, kita dapat membuat referensi yang merupakan tipe dari superclass ke sebuah
object dari subclass tersebut. Kemampuan dari referensi 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 referensi ke method. Misalkan kita punya method statis printInformation yang
mengakibatkan object Person sebagai referensi, kita dapat me-referensi dari tipe Employee
dan tipe Student ke method ini selama itu masih subclass dari class Person.
Abstract class dalam java digunakan untuk mendeklarasikan karakteristik umum dari
subclass. Abstract class tidak bisa diinstansiasi sama halnya dengan kelas interface. abstract
class hanya bisa digunakan sebagai
super class, tapi juga bisa diturunkan dari class abstract lainnya.
Untuk mendeklarasikan sebuah abstract class digunakan keyword abstract,
[abstract] class [class_name]
Sebuah abstract class pada dasarnya tidak hauh beda dengan class lainnya, yakni juga berisi
method yang menggambarkan carakteristik dari kelas abstract tersebut, bedanya yakni sebuah
abstract class bisa berisi method
tanpa diimplementasikan artinya sebuah method tanpa body, methid seperti ini disebut
method abstract. untuk pendeklarasiannya digunakan
keyword abstract: [abstract] modifier class [class_name]
BAB III
HASIL DAN PEMBAHASAN
1. Mendefinisikan Superclass dan Subclass
a. Superclass
Untuk memperoleh suatu class, kita menggunakan extends sebagai kata kuncinya.
Untuk membuktikannya kita akan membuat sebuah class induk atau Superclass
yang diberi nama “Person”.

 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)

Hendra Kusuma. 2018. Laporan Resmi Inheritance.


https://docplayer.info/71742437-Laporan-resmi-inheritance.html (diakses 04 Februari
2020)

Manda Meyfi. 2015. LAPORAN PBO MODUL 5


https://www.academia.edu/31316616/LAPORAN_PBO_MODUL_5.docx (diakses 04
Februari 2020)

Anda mungkin juga menyukai