Nama : Nadin Nabil Hafizh Ayyasy
NRP : 5025231061
Git : https://github.com/Happpizh/PBO/tree/main/tugas12

Reservasi Tiket Pesawat

Ticket
Kode tersebut mendefinisikan sebuah kelas Ticket yang merepresentasikan tiket dengan atribut penumpang (nama penumpang) dan hargaDasar (harga awal tiket). Konstruktor digunakan untuk menginisialisasi nilai atribut tersebut. Kelas ini memiliki metode calculateFare, yang mengembalikan hargaDasar sebagai tarif default, dan dapat dioverride di subclass untuk menghitung tarif berdasarkan aturan spesifik. Metode displayInfo mencetak informasi tiket, termasuk nama penumpang, harga dasar, dan tarif akhir.



EconomyTicket
Kode tersebut mendefinisikan kelas EconomyTicket yang merupakan subclass dari Ticket dan mewakili tiket kelas ekonomi. Konstruktor memanggil konstruktor superclass untuk menginisialisasi atribut. Metode calculateFare dioverride untuk menghitung tarif dengan memberikan diskon 10% pada hargaDasar. Metode displayInfo juga dioverride untuk menampilkan informasi khusus tiket ekonomi, dengan menambahkan keterangan diskon, dan tetap memanfaatkan metode displayInfo dari superclass untuk mencetak detail umum tiket.



BusinessTicket

Kode ini mendefinisikan kelas BusinessTicket, subclass dari Ticket, yang mewakili tiket kelas bisnis. Konstruktor memanfaatkan konstruktor superclass untuk menginisialisasi atribut. Metode calculateFare dioverride untuk menghitung tarif dengan menambahkan biaya tambahan sebesar 25% pada hargaDasar. Metode displayInfo juga dioverride untuk menampilkan informasi spesifik tiket bisnis, menambahkan keterangan biaya tambahan, sementara detail umum tiket tetap ditampilkan menggunakan metode displayInfo dari superclass.



FirstClassTicket
Kode ini mendefinisikan kelas FirstClassTicket, subclass dari Ticket, yang mewakili tiket kelas pertama. Konstruktor memanggil konstruktor superclass untuk menginisialisasi atribut. Metode calculateFare dioverride untuk menghitung tarif dengan menambahkan biaya tambahan sebesar 50% pada hargaDasar. Metode displayInfo juga dioverride untuk menampilkan informasi spesifik tiket kelas pertama, termasuk keterangan biaya tambahan, sambil tetap menggunakan metode displayInfo dari superclass untuk menampilkan detail umum tiket.



Main
Kode ini mendefinisikan kelas Main untuk menjalankan program utama sistem reservasi tiket pesawat. Dalam metode main, tiga objek tiket dibuat: EconomyTicket, BusinessTicket, dan FirstClassTicket, masing-masing dengan nama penumpang dan harga dasar yang sama (Rp 1.000.000). Program mencetak informasi lengkap dari setiap tiket menggunakan metode displayInfo pada setiap objek. Setiap jenis tiket menampilkan detail khusus sesuai dengan kelasnya (diskon atau biaya tambahan), serta detail umum tiket dari superclass Ticket.


Output 



Comments

Popular posts from this blog

Otomata Church Turing oleh Nadin Nabil Hafizh Ayyasy