Anda di halaman 1dari 11

LAPORAN MODUL PRAKTIKUM

MODUL 4
Inheritance, Abstract, Interface Class

NAMA :
ANDJANI CHAERUN NISHA
201410370311151
TEKNIK INFORMATIKA - 2D

LABORATORIUM TEKNIK INFORMATIKA


FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH MALANG
2015

A. SOURCE CODE
1. Sistem Inventaris Buku
a. Class Buku
package modul_4;
abstract public class Buku {
private String judul;
private String penulis;
private int jmlhalaman;
public String getJudul(String judul) {
return judul;
}
public void setJudul(String judul) {
this.judul = judul;
}
public String getPenulis(String penulis) {
return penulis;
}
public void setPenulis(String penulis) {
this.penulis = penulis;
}
public int getJmlhalaman(int jmlhalaman) {
return jmlhalaman;
}
public void setJmlhalaman(int jmlhalaman) {
this.jmlhalaman = jmlhalaman;
}
abstract void katalog();
}

Tabel 1. Source Code Class Buku


b. Class Administrasi
package modul_4;
public interface Administrasi {
int tglpinjam();
int hitungdenda(int hari);
}

Tabel 2. Source Code Class Administrasi

c. Class TA
package modul_4;
import java.util.Scanner;
public class TA extends Buku {
private int Nim;
private String Abstrak;
public int getNim(int Nim) {
return Nim;
}
public void setNim(int Nim) {
this.Nim = Nim;
}
public String getAbstrak(String Abstrak) {
return Abstrak;
}
public void setAbstrak(String Abstrak) {
this.Abstrak = Abstrak;
}
@Override
void katalog() {
String[] kategori = new String[10];
String[] penulis = new String[10];
String[] abstrak = new String[10];
int[] nim = new int[10];
String[] judul = new String[10];
String[] isi = new String[10];
int[] halaman = new int[10];
for (int a = 0; a < 2; a++) {
kategori[a] = new String();
penulis[a] = new String();
abstrak[a] = new String();
judul[a] = new String();
}
System.out.println("===========================================
=");
System.out.println("Masukkan kategori ::\n1. Novel \n2.
Majalah ");
Scanner input = new Scanner(System.in);
kategori[0] = "Novel";
kategori[1] = "Majalah";
System.out.print("Masukkan nomor kategori : ");
int ka = input.nextInt();
switch (ka) {
case 1:
super.setJudul(judul[0] = "Autumn in Paris");
super.setPenulis(penulis[0] = "Anjani");
super.setJmlhalaman(halaman[0] = 213);
this.setNim(nim[0] = 151);
this.setAbstrak(isi[0] = "Buku ini adalah
sebuah karya dari Ilana Tan. Buku ini terdiri dari 4 seri");

super.setJudul(judul[1] = "Ustad Jaka, izinkan


aku menjitakmu pliiss!");
super.setPenulis(penulis[1] = "Chaerun");
super.setJmlhalaman(halaman[1] = 90);
this.setNim(nim[1] = 152);
this.setAbstrak(isi[1] = "Novel ini merupakan
novel remaja islami");
super.setJudul(judul[2] = "Ronggeng Dukuh
Paruh");

super.setPenulis(penulis[2] = "Nisha");
super.setJmlhalaman(halaman[2] = 208);
this.setNim(nim[2] = 153);
this.setAbstrak(isi[2] = "Novel ini
menceritakan seorang ronggeng / penari di sebuah desa bernama
Srintil. Srintil adalah kembang desa di desa itu.");

for (int c = 0; c < 3; c++) {


System.out.println("-------------------------------------------");
System.out.println("Judul \t\t: " +
super.getJudul(judul[c]));
System.out.println("Penulis
\t: " +
super.getPenulis(penulis[c]));
System.out.println("Jumlah halaman \t: " +
super.getJmlhalaman(halaman[c]));
System.out.println("Nim
\t\t: " +
this.getNim(nim[c]));
System.out.println("Abstrak
\t: " +
this.getAbstrak(isi[c]));
System.out.println("-------------------------------------------");
}
break;
case 2:
super.setJudul(judul[3] = "Bobo");
super.setPenulis(penulis[3] = "Gramedia");
super.setJmlhalaman(halaman[3] = 30);
this.setNim(nim[3] = 123);
this.setAbstrak(isi[3] = "Majalah bobo
merupakan majalah anak-anak yang berisi pengetahuan");
super.setJudul(judul[4] = "Gadis");
super.setPenulis(penulis[4] = "Erlangga");
super.setJmlhalaman(halaman[4] = 40);
this.setNim(nim[4] = 124);
this.setAbstrak(isi[4] = "Majalah untuk remaja
wanita yang berisi tentang curahan hati seorang perempuan");
super.setJudul(judul[5] = "Idol");
super.setPenulis(penulis[5] = "Aku");
super.setJmlhalaman(halaman[5] = 35);
this.setNim(nim[5] = 125);
this.setAbstrak(isi[5] = "Majalah ini berisi
tentang berita terbaru selebriti indonesia maupun
mancanegara");

for (int e = 3; e < 6; e++) {


System.out.println("-------------------------------------------");
System.out.println("Judul \t\t: " +
super.getJudul(judul[e]));
System.out.println("Penulis
\t: " +
super.getPenulis(penulis[e]));
System.out.println("Halaman\t\t: " +
super.getJmlhalaman(halaman[e]));
System.out.println("Nim
\t\t: " +
this.getNim(nim[e]));
System.out.println("Abstrak
\t: " +
this.getAbstrak(isi[e]));
System.out.println("-------------------------------------------");
}
break;
default:
System.out.println("Maaf pilihan tidak
tersedia, terimakasih");
}
}
}

Tabel 3. Source Code Class TA


d. Class BukuTeks
Class Test : package modul_4;
import java.util.Scanner;
public class BukuTeks extends Buku implements
Administrasi {
private String penerbit;
public String getPenerbit(String penerbit) {
return penerbit;
}
public void setPenerbit(String penerbit) {
this.penerbit = penerbit;
}
public int tglpinjam() {
int tgl_pin, bln_pin, tgl_kem, bln_kem,
total;
Scanner input = new Scanner(System.in);
System.out.println("===============================
=======");
System.out.print("Masukkan Tanggal Pinjam
: ");
tgl_pin = input.nextInt();
System.out.print("Masukkan Bulan Pinjam

: ");
: ");

bln_pin = input.nextInt();
System.out.print("Masukkan Tanggal Kembali
tgl_kem = input.nextInt();
System.out.print("Masukkan Bulan Kembali

: ");

bln_kem = input.nextInt();
total = ((30 - tgl_pin) + (bln_kem bln_pin - 1) * 30 + tgl_kem) + 1;
return total;
}
public int hitungdenda(int hari) {
int denda;
int hari2;
if (hari > 7) {
hari2 = hari - 8;
denda = hari2 * 300;
System.out.println("Denda sebesar = " +
denda);
} else {
System.out.println("Anda tidak mendapat
denda");
}
return hari;
}
@Override
void katalog() {
String[] kategori = new String[6];
String[] penulis = new String[6];
String[] abstrak = new String[6];
String[] nim = new String[6];
String[] judul = new String[6];
String[] isi = new String[6];
String[] pen = new String[6];
int[] halaman = new int[6];
for (int b = 0; b < 3; b++) {
kategori[b] = new String();
penulis[b] = new String();
abstrak[b] = new String();
nim[b] = new String();
judul[b] = new String();
pen[b] = new String();
}
super.setJudul(judul[0] = "Java");
super.setPenulis(penulis[0] = "Anjani");
super.setJmlhalaman(halaman[0] = 151);
this.setPenerbit(pen[0] = "Erlangga");
super.setJudul(judul[1] = "PHP");
super.setPenulis(penulis[1] = "Chaerun");
super.setJmlhalaman(halaman[1] = 152);
this.setPenerbit(pen[1] = "Gramedia");
super.setJudul(judul[2] = "HTML");

super.setPenulis(penulis[2] = "Nisha");
super.setJmlhalaman(halaman[2] = 153);
this.setPenerbit(pen[2] = "Yudhistira");
for (int p = 0; p < 3; p++) {
System.out.println("-------------------------------------------");
System.out.println("Judul
\t: " +
super.getJudul(judul[p]));
System.out.println("Penulis \t: " +
super.getPenulis(penulis[p]));
System.out.println("Halaman \t: " +
super.getJmlhalaman(halaman[p]) + " lembar");
System.out.println("Penerbit\t: " +
this.getPenerbit(pen[p]));
System.out.println("-------------------------------------------");
}
}
}

Tabel 4. Source Code Class BukuTeks


e. Class Test
package modul_4;
import java.util.Scanner;
public class Test {

");

public static void main(String[] args) {


BukuTeks panggil = new BukuTeks();
TA panggil2 = new TA();
int pilihan, pilihan2;
Scanner input = new Scanner(System.in);
System.out.println("Pilihan - 1 :\n1.TA \n2.Buku Teks
System.out.print("Masukkan nomor pilihan : ");
pilihan = input.nextInt();
switch (pilihan) {
case 1:
panggil2.katalog();
break;
case 2:

System.out.println("======================================");
System.out.println("Pilihan - 2 :\n1.Katalog
\n2.Perhitungan Pinjam");
System.out.print("Masukkan nomor pilihan : ");
pilihan2 = input.nextInt();
if (pilihan2 == 1) {
panggil.katalog();
} else if (pilihan2 == 2) {
panggil.hitungdenda(panggil.tglpinjam());
}
}
}

2. ATM Bank Sukses


a. Class ATMBankSukses
package atmbanksukses;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class ATMBankSukses implements MesinATM {
private String KodeTransaksi;
private Date TanggalTransaksi = new Date();
SimpleDateFormat tanggal = new SimpleDateFormat(dd-MMyyyy);
public String getKodeTransaksi() {
return KodeTransaksi;
}
public void setKodeTransaksi(String KodeTransaksi) {
this.KodeTransaksi = KodeTransaksi;
}
public Date getTanggalTransaksi() {
return TanggalTransaksi;
}
public void setTanggalTransaksi(Date TanggalTransaksi) {
this.TanggalTransaksi = TanggalTransaksi;
}
@Override
public void KeluarkanUang(double nominal) {
int seratus,limapuluh, duapuluh, sisa_duapuluh2;
double sisa_seratus, sisa_limapuluh, sisa_duapuluh,
sisa_sisa_duapuluh2;
seratus = (int) (nominal / 100000);
sisa_seratus = nominal % 100000;
limapuluh = (int) (sisa_seratus / 50000);
sisa_limapuluh = sisa_seratus % 50000;
duapuluh = (int) (sisa_limapuluh / 20000);
sisa_duapuluh = sisa_limapuluh % 20000;
sisa_duapuluh2 = (int) (sisa_seratus / 20000);
sisa_sisa_duapuluh2 = sisa_seratus % 20000;
if (sisa_duapuluh != 0 && sisa_sisa_duapuluh2 != 0)
{

System.out.println(Tidak bisa dihitung);


} else if (sisa_seratus != 0) {
System.out.println(Jumlah nominal 100.000 = +
seratus);
if (sisa_duapuluh == 0) {
System.out.println(Jumlah nominal 50.000 =
+ limapuluh);
System.out.println(Jumlah nominal 20.000 =
+ duapuluh);
} else if (sisa_sisa_duapuluh2 == 0) {

System.out.println(Jumlah nominal 20.000 =


+ sisa_duapuluh);
}
} else {
System.out.println(Jumlah nominal 100.000 = +
seratus);
}
}
public void constructorTransaksi(String KodeTransaksi,
String TanggalTransaksi) {
System.out.println(========================================
===);
System.out.println(Tanggal Transaksi
= +
TanggalTransaksi);
System.out.println(Kode Transaksi Anda = +
KodeTransaksi);
}
String uang;
public int Menu() {
String data;
Scanner input = new Scanner(System.in);
data = tanggal.format(getTanggalTransaksi());
System.out.print(Masukkan kode transaksi : );
this.setKodeTransaksi(input.nextLine());
constructorTransaksi(getKodeTransaksi(), data);
System.out.print(Masukkan nominal uang : );
int nominal = input.nextInt();
return nominal;
}

Tabel 1. Source Code ATMBankSukses


b. Class MesinATM
package atmbanksukses;
public interface MesinATM {
void KeluarkanUang(double nominal);
}

Tabel 2. Source Code MesinATM


c. Class User
package atmbanksukses;
public class User {
public static void main(String[] args) {
ATMBankSukses ambil = new ATMBankSukses();
ambil.KeluarkanUang(ambil.Menu());
}

B. PRINTSCREEN
1. Sistem Inventaris Buku

2. Atm bank sukses

C. PENGALAMAN
Dapat mengetahui cara penggunaan override, class interface, abstract class,
menginheritance kelas, mengimplements kelas
D. KESIMPULAN
Inheritance yaitu dimana sebuah object mempunyai object turunan.
Abstract class yaitu sebuah class setengah jadi (abstrak) yang
memuat/memilikimethod dan atrribut. Abstract class sebenarnya adalah sebuah class,
sehingga memiliki semua sifat dari class biasa (punya konstruktor)
Interface Class yaitu suatu class yang berisi method method tanpa imlementasi,
namun tanpa modifier abstract, apabila suatu interface memiliki atribut, maka
atributnya akan berlaku sebagai konstanta (static final).