5025231237 - Rayhan Aurelia Pramana Rijal - Implementasi Tiket Pesawat
Nama : Rayhan Aurelia Pramana Rijal
Kelas : PBO A
NRP : 5025231237
Sistem Tiket Pesawat
- FirsClassTicket.java
BusinessClassTicket.java
EconomyClassTicket.java
Ticket.java- Output
Penjelasan kode :
1. Abstraksi Kelas Tiket
abstract class Ticket
- Fungsi:
Merupakan kelas induk untuk tipe tiket lainnya. Karena kelas ini abstrak,
tidak dapat diinstansiasi secara langsung.
- Atribut:
- Harga_Awal: Menyimpan harga awal tiket.
- Konstruktor:
- Menerima harga awal tiket dan
menyimpannya ke dalam atribut.
- Metode Abstrak:
- calculateFare(): Metode abstrak yang
harus diimplementasikan oleh kelas turunannya untuk menghitung harga
total tiket.
- Metode Konkret:
- printTicketDetail(): Menampilkan harga
total tiket yang dihitung menggunakan metode calculateFare().
2. Kelas Turunan Tiket
class EconomyTicket
- Fungsi:
Menghitung harga tiket untuk kelas Economy.
- Atribut Khusus:
- Diskon: Berupa nilai diskon negatif
(tambahan potongan harga sebesar 10%).
- Metode:
- calculateFare(): Menghitung harga total
dengan menambahkan diskon negatif (Harga_Awal * (1 - 0.10)).
class BusinessTicket
- Fungsi:
Menghitung harga tiket untuk kelas Business.
- Atribut Khusus:
- Diskon: Berupa nilai kenaikan harga
sebesar 25%.
- Metode:
- calculateFare(): Menghitung harga total
dengan menambahkan 25% ke Harga_Awal (Harga_Awal * (1 + 0.25)).
class FirstClassTicket
- Fungsi:
Menghitung harga tiket untuk kelas First Class.
- Atribut Khusus:
- Diskon: Berupa nilai kenaikan harga
sebesar 50%.
- Metode:
- calculateFare(): Menghitung harga total
dengan menambahkan 50% ke Harga_Awal (Harga_Awal * (1 + 0.50)).
3. Kelas Utama
public class Main
- Fungsi:
Menjalankan program utama untuk menampilkan informasi tiket berdasarkan
tipe.
- Atribut Statis:
- HARGA_TIKET: Menyimpan harga awal tiket
(diatur menjadi 1 juta).
- Metode main():
- Membuat objek tiket berdasarkan tiga
kelas (Economy, Business, First Class) dengan HARGA_TIKET sebagai
parameter.
- Menampilkan informasi:
- Harga Awal Tiket: Menampilkan harga awal yang sama untuk
semua kelas.
- Detail Tiket: Menampilkan harga total untuk setiap
kelas berdasarkan perhitungan diskon masing-masing.
- Reservasi Tiket: Menampilkan ulang detail tiket untuk
setiap kelas.





Komentar
Posting Komentar