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

Main.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.

Source Code : https://github.com/LordeBesarJames/Ticket-Pesawat.git

Komentar

Postingan populer dari blog ini

Tugas Membuat Profil Diri

Ticket Machine

5025231327 - Rayhan Aurelia Pramana Rijal - EAS PWEB E