Pertemuan 11 – Aplikasi Rental Kendaraan

1. Pendahuluan

Aplikasi Rental Kendaraan merupakan sebuah project berbasis Java yang dibuat untuk mengimplementasikan konsep Object Oriented Programming (OOP), khususnya inheritance, polymorphism, dan penggunaan collection. Aplikasi ini digunakan untuk mengelola data kendaraan yang tersedia untuk disewa serta informasi penyewa beserta kendaraan yang disewanya.


2. Tujuan Project

Tujuan dari pembuatan aplikasi ini adalah:

  • Memahami konsep pewarisan (inheritance) dalam Java
  • Menerapkan polymorphism pada method
  • Mengelola data objek menggunakan ArrayList
  • Menampilkan informasi kendaraan dan penyewa secara terstruktur

3. Desain Sistem

Desain Class Diagram :

Aplikasi ini memiliki class induk Kendaraan yang menyimpan atribut umum berupa:

  • merk
  • model
  • tahunProduksi

Class Mobil, Motor, dan Sepeda merupakan turunan dari class Kendaraan.
Mobil dan Motor memiliki atribut tambahan jumlahRoda, sedangkan Sepeda memiliki atribut jenisSepeda.
Selain itu terdapat class Penyewa yang menyimpan nama penyewa dan kendaraan yang disewa.


4. Implementasi

Aplikasi diimplementasikan menggunakan bahasa pemrograman Java dengan pendekatan OOP.
Data kendaraan dan penyewa disimpan menggunakan ArrayList, sehingga memudahkan pengelolaan data secara dinamis.
Program utama menampilkan:

  • Daftar kendaraan yang tersedia
  • Daftar penyewa beserta detail kendaraan yang disewa

5. Konsep OOP yang Digunakan

  • Inheritance: Mobil, Motor, dan Sepeda mewarisi class Kendaraan
  • Polymorphism: Method getInfo() dioverride pada setiap subclass
  • Encapsulation: Data kendaraan dan penyewa dibungkus dalam class
  • Collection: ArrayList digunakan untuk menyimpan objek

6. Code dan Output

Code Program : https://github.com/rafly-alpha/PBO-B/tree/main/Aplikasi-Rental-Kendaraan

Output Program :


7. Kesimpulan

Aplikasi Rental Kendaraan berhasil mengimplementasikan konsep dasar OOP dalam Java. Dengan menggunakan inheritance dan polymorphism, kode menjadi lebih terstruktur dan mudah dikembangkan. Project ini cocok digunakan sebagai latihan pemahaman OOP, khususnya dalam pengelolaan objek dan hubungan antar class.