JURUSAN TEKNIK INFORMATIKA UNIVERSITAS SANATA DHARMA PRAKTIKUM PBO I MODUL IV Tujuan praktikum: 1. Mahasiswa mampu membuat kelas dengan atribut (instance variable) dan metodenya dalam Java 2. Mahasiswa mampu mendefinisikan dan menggunakan metode tanpa parameter dan dengan parameter 3. Mahasiswa mampu mendefinisikan dan menggunakan metode yang mengembalikan nilai 4. Mahasiswa mampu memahami dan mengimplementasikan prinsip enkapsulasi. 5. Mahasiswa mampu mendefinisikan dan menggunakan constructor 6. Mahasiswa mampu membaca dan mendefinisikan diagram kelas Tugas I : Contoh Membuat Program dan Memodifikasi Program 1. Terdapat sebuah kelas BankAccount yang diimplementasikan dalam sebuah kelas bernama BankAccount. Buatlah kelas BankAccount berikut dan simpanlah dalam file BankAccount.java. /* /* /* /*
Class BankAccount */ Instance Variable: accountNo,ownerName,balance */ Created by : Team */ -----------------------------------------------------------------*/
public class BankAccount { private String accountNo; private String ownerName; private double balance; public BankAccount(String no ) { accountNo=no; balance = 0.0; } public void add(double amt) { balance = balance + amt; } public void deduct(double amt) { balance = balance - amt; } public double getBalance( ) { return balance; } public void setBalance(double bal) { balance = bal; } public String getOwnerName( ) { return ownerName; } public void setOwnerName(String name) { ownerName = name; } public String getAccountNo() { return accountNo; } }
2. Buatlah diagram kelas dari kelas BankAccount di atas. Modul 4 Praktikum PBO I Genap 0809 – Jurusan TI FST USD
1
3. Kelas yang digunakan untuk menjalankan kelas BankAccount adalah kelas Main. Kelas Main disimpan dalam file Main.java, dengan kode program berikut ini : import javax.swing.JOptionPane; /** * * @author Team */ public class MainModul4a { public static void main(String[] args) { BankAccount acc1=new BankAccount("017-23-456"); String name=JOptionPane.showInputDialog(null,"Masukkan Nama Untuk Nomor Rekening "+acc1.getAccountNo()); acc1.setOwnerName(name); String acc=JOptionPane.showInputDialog("Masukkan Saldo Awal Untuk Nomor Rekening "+acc1.getAccountNo()); acc1.setBalance(Double.parseDouble(acc)); JOptionPane.showMessageDialog(null,"Nomor Rekening: "+acc1.getAccountNo()+"\n"+ "Nama : "+acc1.getOwnerName()+"\n"+ "Saldo : "+acc1.getBalance(),"Laporan",JOptionPane.INFORMATION_MESSAGE); String addAcc=JOptionPane.showInputDialog("Jumlah Pemasukan Untuk Nomor Rekening "+acc1.getAccountNo()); acc1.add(Double.parseDouble(addAcc)); JOptionPane.showMessageDialog(null,"Nomor Rekening: "+acc1.getAccountNo()+"\n"+ "Nama : "+acc1.getOwnerName()+"\n"+ "Saldo : "+acc1.getBalance(),"Laporan",JOptionPane.INFORMATION_MESSAGE); } }
4. Dalam kelas Main tersebut, terdapat perintah menampilkan pesan yang dipanggil berulang kali. Buatlah perintah menampilkan pesan tersebut menjadi metode dalam kelas BankAccount. Tugas II : Mengimplementasikan diagram kelas dalam program 1. Terdapat sebuah diagram kelas Siswa sebagai berikut: Siswa - Nis - namaSiswa - email - nilai1 - nilai2 nilai3 + + + + + + + + + + + +
Siswa(nis) getNis() getNamaSiswa() getEmail() getNilai1 getNilai2 getNilai3 setNamaSiswa(String) setEmail(String) setNilai1(float) setNilai2(float) setNilai3(float)
: : : : : : : : : : : :
void String String String float float float void void void void void
+ hitungRataRapor
: float
2. Implementasikan diagram kelas Siswa tersebut dalam program Java 3. Terdapat struktur hubungan antara kelas Siswa dengan kelas MainModul4b sebagai berikut: 0100090000032a0200000200a20100000000a201000026060f003a03574d46430100000000 00010097910000000001000000180300000000000018030000010000006c0000000000000 000000000350000006f0000000000000000000000d9350000af08000020454d46000001001 80300001200000002000000000000000000000000000000c012000070180000cb00000009 010000000000000000000000000000c0190300850a0400160000000c000000180000000a00 00001000000000000000000000000900000010000000b70c00000d020000250000000c0000 000e000080250000000c0000000e000080520000007001000001000000a4ffffff0000000000 00000000000000900100000000000004400022430061006c0069006200720069000000000 0000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000110048ae110010000000acb111002caf110052516032acb111 00a4ae11001000000014b0110090b1110024516032acb11100a4ae11002000000049642f31 a4ae1100acb1110020000000ffffffff1c27d100d0642f31ffffffffffff0180ffff0180efff0180ffffffff00 00000000080000000800004300000001000000000000005802000025000000372e9001000 0020f0502020204030204ef0200a07b20004000000000000000009f00000000000000430061 006c0069006200720000000000000000006caf1100dee32e31e88d0832ccb21100d8ae11009 c382731060000000100000014af110014af1100e8782531060000003caf11001c27d1006476 000800000000250000000c00000001000000250000000c00000001000000250000000c0000 0001000000120000000c00000001000000180000000c00000000000002540000005400000 00000000000000000350000006f0000000100000055558740c48c874000000000570000000 10000004c000000040000000000000000000000b80c00000d0200005000000020000000360 0000046000000280000001c0000004744494302000000ffffffffffffffffb80c00000e0200000000 00004600000014000000080000004744494303000000250000000c0000000e00008025000 0000c0000000e0000800e0000001400000000000000100000001400000004000000030108 00050000000b0200000000050000000c0259002702040000002e0118001c000000fb020300 010000000000bc02000000000102022253797374656d00000000000000000000000000000 00000000000000000000000040000002d010000040000002d0100001c000000fb02f0ff0000 000000009001000000000440002243616c696272690000000000000000000000000000000 0000000000000000000040000002d010100040000002d010100040000002d010100040000 0002010100050000000902000000020d000000320a0f000000010004000000000027025900 20cd0900040000002d010000040000002d010000030000000000 Buatlah MainModul4b yang berisi instantiasi kelas Siswa serta eksekusi berbagai metode yang dimiliki oleh kelas Siswa. Tugas III : Toko Sebuah toko ingin menghitung berapa penghasilan dari 5 buah barang yang sudah terjual. Data yang sudah dimiliki adalah harga beli, harga jual dan jumlah item terjual. Bantulah toko tersebut menghitung penghasilannya. Laporan Praktikum Setelah praktikum, buatlah laporan dari hasil menjalankan dan menganalisa program Anda dalam modul 4. Laporan dikumpulkan pada minggu berikutnya. Laporan memuat: a. Tujuan praktikum b. Dasar teori dari pembuatan kelas dan obyek dalam Java, metode, enkapsulasi. c. Listing program (hasil capture screen) d. Output program (hasil capture screen) e. Analisa program yang berisi: o Maksud/tujuan umum program dan algoritma dari program utamanya o Diagram kelas dari setiap kelas o Struktur hubungan antara kelas(-kelas) dan main program o Penjelasan atas tiap baris perintah program dalam tiap kelas f. Kesimpulan g. Daftar pustaka yang dipakai untuk membuat laporan Daftar Pustaka Modul 4 Praktikum PBO I Genap 0809 – Jurusan TI FST USD
3
Wu, C. Thomas. 2006. An Introduction to Object-Oriented Programming with Java. Mc Graw-Hill International Edition. 4th edition.
Selamat bekerja. Seize the day !!