PBO 11
muhammad rafi budi purnama
5025221307
PBO 11
code : https://github.com/mbahbud/PBO.git
Aplikasi Rental Mobil
class diagram tersebut menunjukan bahwa class Motor, Sepeda dan Mobil merupakan inheritence dari Kendaraan. Detail kode dari setiap class tersebut adalah seperti berikut.
Main.java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Penyewaan penyewaan = new Penyewaan();
// Membuat objek dari class turunan Kendaraan
Sepeda sepeda = new Sepeda("Sepeda Gunung", 20000);
Motor motor = new Motor("Honda Vario", 50000, 125);
Mobil mobil = new Mobil("Toyota Avanza", 300000, 7);
System.out.println("=== SISTEM PENYEWAAN KENDARAAN ===");
System.out.println("1. Sepeda");
System.out.println("2. Motor");
System.out.println("3. Mobil");
System.out.print("Pilih kendaraan: ");
int pilihan = input.nextInt();
System.out.print("Berapa hari ingin disewa? ");
int hari = input.nextInt();
switch (pilihan) {
case 1:
penyewaan.sewa(sepeda, hari);
break;
case 2:
penyewaan.sewa(motor, hari);
break;
case 3:
penyewaan.sewa(mobil, hari);
break;
default:
System.out.println("Pilihan tidak valid!");
}
}
}
Penyewaan.java
public class Penyewaan {
public void sewa(Kendaraan kendaraan, int hari) {
System.out.println("\n=== DETAIL PENYEWAAN ===");
kendaraan.info();
System.out.println("Durasi sewa: " + hari + " hari");
System.out.println("Total harga: Rp " + (kendaraan.getHargaSewa() * hari));
System.out.println("=========================\n");
}
}
Motor.java
public class Motor extends Kendaraan {
private int cc;
public Motor(String nama, int hargaSewa, int cc) {
super(nama, hargaSewa);
this.cc = cc;
}
public int getCc() {
return cc;
}
@Override
public void info() {
System.out.println("=== MOTOR ===");
super.info();
System.out.println("CC: " + cc);
}
}
Sepeda.java
public class Sepeda extends Kendaraan {
public Sepeda(String nama, int hargaSewa) {
super(nama, hargaSewa);
}
@Override
public void info() {
System.out.println("=== SEPeda ===");
super.info();
}
}
Kendaraan.java
public class Kendaraan {
protected String nama;
protected int hargaSewa;
public Kendaraan(String nama, int hargaSewa) {
this.nama = nama;
this.hargaSewa = hargaSewa;
}
public String getNama() {
return nama;
}
public int getHargaSewa() {
return hargaSewa;
}
public void info() {
System.out.println("Kendaraan: " + nama);
System.out.println("Harga Sewa: Rp " + hargaSewa);
}
}
Komentar
Posting Komentar