BAB : POLIMORFISME
NAMA : MOH. ARIF ANDRIAN
NIM : 156150600111002
TANGGAL : 03052016
ASISTEN : - REZA SAPURTA
- REZKY DERMAWAN A. DEFINISI MASALAH
Sistem Salon Kecantikan Buatlah sistem sederhana untuk salon yang menyediakan jasa dan menjual produk-
produk kecantikan. Salon ini menawarkan 3 jenis keanggotaan : Premium , Gold dan Silver. Premium, Gold dan Silver masing-masing menerima diskon 20 , 15 , dan
10 , untuk semua layanan yang disediakan. Pelanggan tanpa keanggotaan tidak menerima diskon. Semua anggota menerima diskon 10 untuk produk yang dibeli
dan ini bisa berubah sewaktu-waktu.
B. SOURCE CODE
Salon.java
1 2
3 4
5 6
7 8
9 1
1 1
1 2
1 3
1 4
1 5
1 6
1 7
1 8
package Praktikum7; abstract class Salon {
private String Nama, Kategori, Jasa = -,, Produk = -,; private double Harga;
public SalonString nama, String jasa, String kategori { this.Nama = nama;
this.Jasa = jasa; this.Kategori = kategori;
HargaJasajasa; }
public SalonString nama, String produk, double jmlProduk, String kategori {
this.Nama = nama; this.Produk = produk;
this.Kategori = kategori; HargaProdukproduk, jmlProduk;
} public void HargaJasaString jasa {
switch jasa { case Rebounding:
case 1: Harga = 150000;
Jasa = Rebounding; break;
case Smoothing: case 2:
Harga = 230000; Jasa = Smoothing;
1 9
2 2
1 2
2 2
3 2
4 2
5 2
6 2
7 2
8 2
9 3
3 1
3 2
3 3
3 4
3 5
3 6
3 7
3 8
3 9
4 4
1 4
2 4
3 4
break; case Creambath:
case 3: Harga = 25000;
Jasa = Creambath; break;
case Hair Coloring: case 4:
Harga = 65000; Jasa = Hair Coloring;
break; case Spa:
case 5: Harga = 300000;
Jasa = Spa; break;
} setHargaHarga;
} public void HargaProdukString produk, double jmlProduk {
switch produk { case Lipstik:
case 1: Harga = 45000 jmlProduk;
Produk = Lipstik; break;
case Shampo: case 2:
Harga = 25000 jmlProduk; Produk = Shampo;
break; case Handbody:
case 3: Harga = 35000 jmlProduk;
Produk = Handbody; break;
case Bedak: case 4:
Harga = 50000 jmlProduk; Produk = Bedak;
break; }
setHargaHarga; }
public abstract double TotalBayar; public abstract void setHargadouble harga;
public String getNama { return Nama;
} public String getKategori {
return Kategori;
4 4
5 4
6 4
7 4
8 4
9 5
5 1
5 2
5 3
5 4
5 5
5 6
5 7
5 8
5 9
6 6
1 6
2 6
3 6
4 6
5 6
6 6
7 6
8 6
9 }
public String getProduk { return Produk;
} public String getJasa {
return Jasa; }
public double getHarga { return Harga;
} Override
public String toString { return \n=================================\n|\tTOTAL
PEMBAYARAN\t|\n=================================\n Nama \t\t: + getNama + \n Kategori\t: + getKategori
+ \n Jasa\t\t: + getJasa + \n Produk\t\t: + getProduk + \n Harga\t\t: Rp. + getHarga;
} }
7 7
1 7
2 7
3 7
4 7
5 7
6 7
7 7
8 7
9 8
8 1
8 2
8 3
8 4
8 5
8 6
8 7
8 8
8 9
9 9
1
9 2
9 3
9 4
Premium.java
1 2
3 4
5 6
7 8
9
1 1
1 1
2 1
3 1
4 1
5 1
6 1
7 1
8 1
9 2
2 1
2 2
2 3
2 4
package Praktikum7; public class Premium extends Salon {
private double Diskon = 0.2; private double TotalBayar;
public PremiumString nama, String jasa, String kategori { supernama, jasa, kategori;
setHargagetHarga; }
public PremiumString nama, String barang, double jmlProduk, String kategori {
supernama, barang, jmlProduk, kategori; }
Override public void setHargadouble harga {
TotalBayar = getHarga - getHarga Diskon; }
Override public double TotalBayar {
return TotalBayar; }
Override public String toString {
return super.toString+ \n Diskon 20\t: Rp. + getHarga Diskon + \n=================================\n
Total Bayar\t: Rp. + TotalBayar +\n=================================;
} }
Gold.java
1 2
package Praktikum7; public class Gold extends Salon {
3 4
5 6
7 8
9
1 1
1 1
2 1
3 1
4 1
5 1
6 1
7 1
8 1
9 2
2 1
2 2
2 3
2 4
private double Diskon = 0.15; private double TotalBayar;
public GoldString nama, String perawatan, String kategori{ supernama, perawatan, kategori;
setHargagetHarga; }
public GoldString nama, String barang, double jumBarang, String kategori {
supernama, barang, jumBarang, kategori; }
Override public void setHargadouble harga {
TotalBayar = getHarga - getHarga Diskon; }
Override public double TotalBayar {
return TotalBayar; }
Override public String toString {
return super.toString + \n Diskon 15\t: Rp. + getHarga Diskon + \n=================================\n
Total Bayar\t: Rp. + TotalBayar +\n=================================;
} }
Silver.java
1 2
3 4
5 6
7 8
package Praktikum7; public class Silver extends Salon {
private double Diskon = 0.1; private double TotalBayar;
public SilverString nama, String jasa, String kategori { supernama, jasa, kategori;
setHargagetHarga; }
9 1
1 1
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
2 2
1 2
2 2
3
2 4
2 5
public SilverString nama, String barang, double jumBarang, String kategori {
supernama, barang, jumBarang, kategori; setHargagetHarga;
} Override
public void setHargadouble harga { TotalBayar = getHarga - getHarga Diskon;
} Override
public double TotalBayar { return TotalBayar;
} Override
public String toString { return super.toString+ \n Diskon 10\t: Rp. +
getHarga Diskon + \n=================================\n Total Bayar\t: Rp. + TotalBayar
+\n=================================; }
}
NoKategori.java
1 2
3 4
5 6
7 8
9 1
package Praktikum7; public class NoKategori extends Salon {
private double TotalBayar; public NoKategoriString nama, String jasa, String kategori
{ supernama, jasa, kategori;
setHargagetHarga; }
public NoKategoriString nama, String barang, double jmlProduk, String kategori {
supernama, barang, jmlProduk, kategori; setHargagetHarga;
1 1
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
2 2
1 2
2
2 3
2 4
} Override
public void setHargadouble harga { TotalBayar = harga;
} Override
public double TotalBayar { return TotalBayar;
} Override
public String toString { return super.toString+
\n=================================\n Total Bayar\t: Rp. + TotalBayar+\n=================================;
} }
MainSalon.java
1 2
3 4
5
6 7
8 9
1 1
1 1
2 1
3 package Praktikum7;
import java.io.; public class MainSalon {
public static void mainString[] args throws IOException { BufferedReader in = new BufferedReadernew
InputStreamReaderSystem.in; String pilihJasa = , pilihProduk = ;
System.out.printlnSelamat datang di YouSee Salon; System.out.printNama : ;
String nama = in.readLine; System.out.println;
System.out.printlnLayanan :; System.out.print1. Jasa ;
System.out.print2. Produk\n; System.out.printPilih Layanan : ;
String pilihLayanan = in.readLine; int jumlah = 0, JmlTot = 0;
switch pilihLayanan {
1 4
1 5
1 6
1 7
1 8
1 9
2 2
1 2
2 2
3 2
4 2
5
2 6
2 7
2 8
2 9
3 3
1 3
2 3
3 3
4 3
5 3
6 3
7 3
8 case Jasa:
case 1: System.out.println;
System.out.printlnJasa : ; System.out.print1. ReboundingRp. 150.000 ;
System.out.print2. SmoothingRp. 230.000\n; System.out.print3. CreambathRp. 25.000 ;
System.out.print4. Hair ColoringRp.65.000\n;
System.out.print5. SpaRp. 300.000\n; System.out.printPilih Jasa : ;
pilihJasa = in.readLine; break;
case Produk: case 2:
System.out.println; System.out.printlnProduk :;
System.out.print1. LipstikRp. 45.000 ; System.out.print2. ShampoRp. 25.000\n;
System.out.print3. HandbodyRp. 35.000 ; System.out.print4. BedakRp. 50.000\n;
System.out.printPilih Produk : ; pilihProduk = in.readLine;
System.out.printJumlah : ; jumlah = Integer.parseIntin.readLine;
JmlTot += jumlah; break;
} System.out.println;
System.out.printlnKategori :; System.out.print1. Premium ;
System.out.print2. Gold ; System.out.print3. Silver ;
System.out.print4. NoKategori\n; System.out.printPilih Kategori : ;
String pilihKategori = in.readLine; switch pilihLayanan {
case Jasa: case 1:
switch pilihKategori { case Premium:
case 1: pilihKategori = Premium;
Salon Premium = new Premiumnama, pilihJasa, pilihKategori;
System.out.printlnPremium; break;
case Gold: case 2:
pilihKategori = Gold; Salon Gold = new Goldnama, pilihJasa,
3 9
4 4
1 4
2 4
3 4
4 4
5 4
6 4
7 4
8 4
9 5
5 1
5 2
5 3
5 4
5 5
5 6
5 7
5 8
5 9
6
6 1
6 2
6 3
pilihKategori; System.out.printlnGold;
break; case Silver:
case 3: pilihKategori = Silver;
Salon Silver = new Silvernama, pilihJasa, pilihKategori;
System.out.printlnSilver; break;
case NoKategori: case 4:
pilihKategori = NoKategori; Salon NoKategori = new NoKategorinama,
pilihJasa, pilihKategori; System.out.printlnNoKategori;
break; }
break; case Produk:
case 2: if pilihKategori = NoKategori ||
pilihKategori = 4 { Salon Diskon = new Silvernama, pilihProduk,
jumlah, pilihKategori; System.out.printlnDiskon;
} else if pilihKategori == NoKategori || pilihKategori == 4 {
Salon NoDiskon = new NoKategorinama, pilihProduk, jumlah, pilihKategori;
System.out.printlnNoDiskon; }
break; }
System.out.println\nMOH ARIF ANDRIAN + INDAH PUSPITASARI;
} }
6 4
6 5
6 6
6 7
6 8
6 9
7 7
1 7
2
7 3
7 4
7 5
7 6
7 7
7 8
7 9
8 8
1 8
2 8
3 8
4 8
5
8 6
8 7
8 8
8 9
9 9
1 9
2 9
3 9
4
9 5
9 6
C. PEMBAHASAN