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:
ArrayListdigunakan 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.