Professional Documents
Culture Documents
(M4) Modul
(M4) Modul
TIM PENYUSUN
Nama Kode Asisten
Afina Ramadhani NOY
Annisa Syafarani Callista CAL
Arsike Cipta Pelangi ARS
Bima Susila Mukti BIM
Desita Nur R. DST
Diva Jihan Safira DIV
Hamdan Dzikrurobbi DZI
I Komang Gede Andhi Kurniawan AND
Idellia Muthia Nurbaisa IDL
Ivan Priyambudi IVN
M. Arrasyid R. RDZ
M. Ikhsan Pratama P. ISP
M. Rifqi Rusandi RFR
Mukhammad Furqon WGS
Nafidzah Kiasati Shadrina NFZ
Rizky Azis Jayasutisna SKY
Sherly Fratista SHE
Syfa Nur Lathifah SYF
Wiguna Ramadhan WRZ
Daftar Isi
TIM PENYUSUN ................................................................................................................... 1
Tujuan Praktikum ................................................................................................................ 3
1. Abstract Class .............................................................................................................. 3
1.1 Definisi ................................................................................................................... 3
1.2 Class Diagram pada Abstract Class ............................................................. 3
1.3 Abstract Method ................................................................................................ 4
1.4 Exercise Abstract Class 1 ................................................................................. 5
1.5 Source Code Abstract Class Exercise 1 ...................................................... 6
2. Interface ......................................................................................................................... 7
2.1 Definisi ................................................................................................................... 7
2.2 Class Diagram pada Interface ....................................................................... 8
2.3 Exercise Interface 1 .......................................................................................... 10
2.4 Source Code Interface Exercise 1 ............................................................... 11
Study Case Modul 4 ........................................................................................................ 14
Daftar Pustaka ................................................................................................................... 16
MODUL 4
Tujuan Praktikum
1. Praktikan dapat memahami dan mengimplementasikan konsep
Abstract Class
2. Praktikan dapat memahami dan mengimplementasikan konsep
Interface
1. Abstract Class
1.1 Definisi
Abstract class adalah class yang memiliki keyword abstract pada
class nya, berisi method abstrak dimana pengimplementasiannya
tidak dibuat di dalam class tersebut tetapi dibuat di masing-masing
class turunannya. Abstract class ini biasanya digunakan sebagai
gambaran umum untuk para class turunannya yang akan dibuat.
Abstract class tidak dapat di-instansiasi (tidak bisa dibuat objek).
• Class Pakaian:
o 2 variabel protected: warna (String) dan ukuran (int)
o 3 method dengan return type void: setWarna (String
warna), setUkuran (int ukuran), dan detail()
• Class Baju:
o 2 method dengan return type void: setWarna (String
warna), setUkuran (int ukuran)
• Class Celana:
o 2 method dengan return type void: setWarna (String
warna), setUkuran (int ukuran)
Pakaian.java
Baju.java
Celana.java
MainClass.java
Output:
2. Interface
2.1 Definisi
Interface merupakan tipe referensi yang terdiri dari
kumpulan method (tidak memiliki body), method pada interface
harus diturunkan atau ditulis ulang semua di class turunannya.
Interface dapat mengimplementasikan konsep polymorphisme
karena memungkinkan kita mengimplementasikan method yang
spesifik meski tidak ada hubungannya dengan hirariki inheritancenya.
Beri nama class Interface sesuai Class diagram. Kemudian isi class
tersebut sesuai dengan method yang ada di class diagram.
<<interface>>
Kalkulasi
+ Luas () : void
+ Keliling () : void
Persegi PersegiPanjang
- sisi : double - panjang : double
- lebar : double
* Persegi (double sisi)
+ Luas () : void * PersegiPanjang (double p, double l)
+ Keliling () : void + Luas () : void
+ Keliling () : void
• Class Kalkulasi:
o 1 method dengan return type void: HitungLuas()
o 1 method dengan return type double yaitu getLuas()
• Class Persegi:
o 1 variabel private yaitu sisi (double)
o 1 Constructor dengan parameter n (String)
o 1 method dengan return type void: HitungLuas (),
getLuas ()
• Class Segitiga:
o 2 variabel private yaitu alas (double), dan tinggi
(double)
o 1 Constructor dengan parameter n (String)
o 1 method dengan return type void: HitungLuas (),
getLuas ()
Kalkulasi.java
Persegi.java
PersegiPanjang.java
MainClass.java
Output:
• Interface DetailHewan:
o 1 method dengan return type void yaitu Detail()
• Interface Jenis:
o 1 method dengan return type void yaitu Jenis()
• Interface Populasi:
o 2 method dengan return type void yaitu TahunSebelum() dan
TahunSesudah()
• Class Hewan:
o 3 variabel public, yaitu: Jumlahkaki (int), TempatHidup
(String), BerkembangBiak ()
o 1 constructor dengan parameter t (String) dan b (String)
o 1 method dengan return type Detail()
• Class Omnivora:
o 1 constructor dengan parameter t (String) dan b (String)
o 4 method dengan return type void yaitu detail(), Jenis(),
TahunSebelum(), dan TahunSekarang()
• Class Herbivora:
o 1 constructor dengan parameter t (String) dan b (String)
o 3 method dengan return type void yaitu detail(),
TahunSebelum(), dan TahunSekarang()
• Class Lele:
o 1 constructor dengan parameter t (String) dan b (String)
o 4 method dengan return type void yaitu detail(), Jenis(),
TahunSebelum(), dan TahunSekarang()
• Class Sapi:
o 1 constructor dengan parameter t (String) dan b (String)
o 2 method dengan return type void yaitu detail() dan
TahunSekarang()
Daftar Pustaka