Tugas 8 - Rental Kendaraan

Nama: Alma Khusnia
NRP: 5025231063
Kelas: PBO (G)

Pertemuan 11

Study Case "Rental Kendaraan"

Source code : github

Penjelasan kode


1. Class Kendaraan

Kelas kendaraan merupakan parent dari beberapa kelas berikutnya. Terdapat atribut merk, model, dan tahunProduksi. Pada konstruktor seperti biasa menggunakan this untuk membedakan antara variabel lokal dan atribut kelas. Kemudian terdapat getter yaitu getMerk(), getModel(), getTahunProduksi() untuk mengembalikan nilai atribut masing-masing. Selain itu, terdapat method getDetail() untuk mengembalikan detail kendaraan dalam bentuk string yang lengkap. 

2. Class Mobil


Kelas mobil merupakan subclass dari class kendaraan (extend). Sehingga kelas mobil akan mewarisi atribut dan method dari class kendaraan. Terdapat atributnya yaitu jumlahRoda. Pada konstruktor terdapat super(merk, model, tahunProduksi) yang digunakan untuk memanggil konstruktor dari class kendaraan. Terakhir, terdapat method getDetail() untuk mengembalikan detail mobil yang lengkap.

3. Class Motor


Sama seperti sebelumnya, class motor merupakan subclass dari class kendaraan (extend). Sehingga kelas motor akan mewarisi atribut dan method dari class kendaraan. Terdapat atributnya yaitu jumlahRoda. Pada konstruktor terdapat super(merk, model, tahunProduksi) yang digunakan untuk memanggil konstruktor dari class kendaraan. Terakhir, terdapat method getDetail() untuk mengembalikan detail motor yang lengkap.

4. Class Sepeda

Sama seperti sebelumnya, class sepeda merupakan subclass dari class kendaraan (extend). Sehingga kelas sepeda akan mewarisi atribut dan method dari class kendaraan. Terdapat atributnya yaitu jenis. Pada konstruktor terdapat super(merk, model, tahunProduksi) yang digunakan untuk memanggil konstruktor dari class kendaraan. Terakhir, terdapat method getDetail() untuk mengembalikan detail sepeda yang lengkap.

5. Class Penyewaan

Terdapat atribut daftarKendaraan dan daftarPenyewa berupa obyek ArrayList untuk menyimpannya. Method tambahKendaraan(Kendaraan kendaraan) untuk menambahkan kendaraan yang tersedia ke dalam list kendaraan. Method tambahPenyewa() untuk menambahkan informasi tentang nama penyewa dan kendaraan yang disewa. Kemudian method cetakListKendaraan() untuk mencetak hasil list kendaraan yang tersedia, sedangkan method  cetakListPenyewa() untuk menampilkan hasil list penyewa beserta detail kendaraan yang disewa.

6. Class Main (Testing)

Pada class main dapat memasukkan input berupa obyek yang diinginkan seperti gambar diatas.

7. Result


Terimakasih <3

Komentar

Postingan populer dari blog ini

Tugas 1 - Data Personal

EAS