Praktikum PBO Lanjut Java Review 1
Topik Enkapsulasi Inheritance Polymorphism Exception Handling
Encapsulasi
Tidak ada informasi hidding Gambar 1 UML class diagram of Vehicle with no Hiding
Langkah-langkah Note: Semua data diasumsikan dalam satuan kilogram Buatlah Vehicle class yang mengimplementasikan UML diagram yang telah diberikan pada gambar 1. Tambahkan dua buah atribut yang bertipe public: load (the current weight of the vehicle’s cargo) dan maxLoad (the vehicle’s maximum cargo weight limit). Tambahkan satu buah konstruktor yang bertipe public, yang digunakan untuk mengeset nilai atribut maxLoad. Tambahkan dua buah methods yang bertipe public: getLoad (untuk mendapatkan nilai atribut load) dan getMaxLoad (untuk mendapatkan nilai atribut maxLoad). Note: Semua data diasumsikan dalam satuan kilogram
Program Tester
Result TROUBLE
Dengan informasi hindding Gambar 2 UML class diagram of vehicle with information hiding
Langkah-langlah Kopi Vehicle.java dan lakukan modifikasi untuk mengimplementasikan UML diagram pada gambar 2. Vehicle1.java: Lakukan modifikasi terhadap atribut load dan maxLoad jadikan pertipe private. Tambahkan method addBox. Method ini mempunyai satu argumen yaitu weight dalam satuan kilogram. Method addBox harus melakukan pengecekan terhadap penambahan box agar jangan sampai melebihi kapasitas maksimum. Bila terjadi pelanggaran terhadap kapasitas maksimum, maka penambahan box di tolak dan mengembalikan nilai false; jika tidak terjadi pelanggaran terhadap batas maksimum maka weight dari box diterima dan ditambahkan pada vehicle dan mengembalikan nilai true.
Kata kunci Hint: Gunakan statement if…else untuk melakukan pengecekan terhadap kapasitas maksimum. Contoh: if (<boolean_expression>) { <statement> } else { }
Tester
Result
Inheritance
UML
Langkah-lakangkah
Langkah-langkah (Cont’d)
Catatan
Testing Download file http://kebo.vlsm.org/~idris/file/oop_lanjut/Tes2.class
Result Membaca rekening nasabah Heru Cahyono dengan kredit tanpa saldo minimal. Ambil Uang 150.00: true Simpan Uang 22.50: true Ambil Uang 47.62: true Ambil Uang 400.00: false Nasabah [Heru Cahyono] mempunyai saldo sebesar 324.88 Membaca rekening nasabah Budi Sutikno dengan kredit yang memiliki saldo minimal. Ambil Uang 400.00: true Nasabah [Budi Sutikno] mempunyai saldo sebesar 0.0 Membaca rek nasabah Maya Nurmalia dgn kredit yang digabung dengan suaminya Budi. Simpan Uang 150.00: true Ambil Uang 750.00: false Nasabah [Maya Nurmalia] memiliki saldo sebesar 150.0 Membuat nasabah Joko Santoso. Membuat Debetnya dengan saldo 500.00 dan suku bunga 3%. Membuat nasabah Heru Cahyono. Membuat Kreditnya dengan saldo 500.00 dan tidak ada saldo minimal. Membuat nasabah Budi Sutikno. Membuat Kreditnya dengan saldo 500.00 dan saldo minimal 500.00. Membuat nasabah Maya Nurmalia. Maya membagi kreditnya dengan suaminya Budi. Membaca rekening nasabah Joko Santoso. Ambil Uang 150.00: true Simpan Uang 22.50: true Ambil Uang 47.62: true Ambil Uang 400.00: false Nasabah [Joko Santoso] punya saldo sebesar 324.88
Polymorphism
Overloading method
Overload….. (cont’d)
Exception Handling
Example 1
Example 2
Example 3
Example4
Example4 (Cont’d)
Example4 (Cont’d)
Result