Tugas 12 - Sistem Reservasi Tiket Pesawat
Nama : Muhammad Shafa Narariya
NRP : 5025231016
Link Code : https://github.com/ItsPong/Tugas12
Sistem Reservasi Tiket Pesawat
Polymorphism diterapkan pada Metode calculateFare() dan displayInfo() dioverride di setiap subclass untuk perilaku yang berbeda sesuai dengan jenis tiket. Polimorfisme memungkinkan metode yang sama di superclass (Ticket) memiliki implementasi berbeda di subclass (EconomyTicket, BusinessTicket, dan FirstClassTicket).
- Kelas Ticket (Superclass):
- Atribut:
- penumpang: Nama penumpang.
- hargaDasar: Harga dasar tiket.
- Metode:
- calculateFare(): Metode dasar untuk
menghitung tarif, akan dioverride di subclass sesuai dengan jenis tiket.
- displayInfo(): Menampilkan informasi
tiket, termasuk penumpang, harga dasar, dan tarif akhir.
- Fungsi: Menyediakan kerangka dasar untuk
kelas tiket lainnya (Economy, Business, First Class).
- Kelas EconomyTicket (Subclass):
- Diskon 10% diterapkan
pada harga dasar.
- Metode yang Dioverride:
- calculateFare(): Mengembalikan harga
dasar dikurangi 10%.
- displayInfo(): Menampilkan informasi
tambahan bahwa diskon 10% telah diterapkan.
- Kelas BusinessTicket (Subclass):
- Biaya tambahan 25% diterapkan
pada harga dasar.
- Metode yang Dioverride:
- calculateFare(): Mengembalikan harga
dasar ditambah 25%.
- displayInfo(): Menampilkan informasi
tambahan bahwa biaya tambahan 25% telah diterapkan.
- Kelas FirstClassTicket (Subclass):
- Biaya tambahan 50% diterapkan
pada harga dasar.
- Metode yang Dioverride:
- calculateFare(): Mengembalikan harga
dasar ditambah 50%.
- displayInfo(): Menampilkan informasi
tambahan bahwa biaya tambahan 50% telah diterapkan.
- Kelas Main:
- Membuat objek untuk masing-masing jenis
tiket (EconomyTicket, BusinessTicket, dan FirstClassTicket).
- Memanggil metode displayInfo() untuk
setiap objek untuk menampilkan detail tiket.
Komentar
Posting Komentar