LAPORAN PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK (PBO) DENGAN JAVA MODUL KE 4 EXCEPTION HANDLING
Pengampu : Galih Wasis W. S.Kom. M.Cs.
Nama: Riki Rizki Nur Shidiq 201610370311217
LABORATORIUM TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG 2016/2017
Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
DAFTAR ISI 1. Deskripsi Praktikum............................................................................................................... 1 2. Perangkat Lunak .................................................................................................................... 1 3. Teori Penunjang...................................................................................................................... 1 4. Prosedur Pelaksanaan ............................................................................................................ 2 5. Hasil Soal Latihan dan penjelasan ........................................................................................ 3 6. Implementasi dan Hasil Praktikum ...................................................................................... 8 7.
Kesimpulan ............................................................................................................................ 13
Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
1
1. Deskripsi Praktikum
Praktikum modul 1 ini yaitu tentang struktur dasar JAVA. Tujuan dari praktikum ini yaitu : a. Mahasiswa dapat memahami penggunaan JAVA dan memahami struktur dasar pemrograman JAVA. b. Mahasiswa dapat memahami pemrograman berorientasi object. c. Mahasiswa dapat memahami konsep exception handling dan throw, dan cara mengimplementasikan pada pembuatan program.
2. Perangkat Lunak
Perangkat lunak yang digunakan yaitu compiler java (JDK), JRE, dan editor java netbean.
3. Teori Penunjang
Dasar teori yang digunakan pada praktikum ini yaitu sebagai berikut : a. Exception Handling Exception adalah event, yang terjadi ketika program dieksekusi, yang ngakibatkan terganggunya alur program secara normal. Ketika error terjadi di suatu method, maka method tersebut akan membuat object yang kemudian dikirim ke runtime system. Object ini, yang disebut sebagai exception object, mengandung informasi tentang error yang terjadi, termasuk tipe dan kondisi program pada saat error terjadi. Proses pembuatan exception object dan kemudian mengirimnya ke runtime system ini disebut sebagai “ t h ro w i n g a n exception” (melemparkan exception). b. Keyword throws dan throw Jika method tidak dapat menangani exception, maka method tersebut harus mendeklarasikan jenis exception yang mungkin dilemparkan menggunakan kata throws. Kata throws digunakan pada bagian deklarasi method.
Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
2
4. Prosedur Pelaksanaan
Sebelum mengerjakan tugas dari modul 1, maka mahasiswa diharuskan mencoba mengerjakan latihan – latihan yaitu mencoba latihan yang memiliki materi tentang penggunaan exception handling dan throw.
Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
3
5. Hasil Soal Latihan dan penjelasan 1. Latihan 1 – Exception Handling
a. Source code 1. package mod4_lat1; 2. 3. import java.util.Scanner; 4. 5. public class Perpustakaan { 6.
public static void main(String[] args) {
7.
String [] judulBuku = new String[3];
8.
Scanner input = new Scanner(System.in);
9. 10.
try{
11.
for(int i=0; i>=0; i++){
12.
System.out.print("Masukkan Judul Buku : ");
13.
judulBuku[i] = input.next();
14.
System.out.println(judulBuku[i]+" tersimpan");
15.
}
16.
}
17.
catch (ArrayIndexOutOfBoundsException a){
18.
System.out.println(a);
19.
}
20.
System.out.println("Judul Buku yang tersimpan : ");
21. 22.
for(int i=0; i
23.
System.out.println(judulBuku[i]);
24.
}
25. 26.
}
27. 28. }
b. Print screen hasil Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
4
c. Penjelasan 1. Compile dan masukkan judul buku. 2. Ketika meng-inputkan judul buku ke 4 apa pesan error yang ditampilkan? - java.lang.ArrayIndexOutOfBoundsException: 3 3. Mengapa terjadi error? -
Karena batas inputan hanya sampai 3, jadi apabila inputan sampai 4 maka akan muncul pesan error.
4. Sekarang coba ganti pesan errornya menjadi “Rak buku penuh”
5. Sekarang coba hapus try catch nya, apa yang terjadi? -
Program akan error di akhir seperti berikut
Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
5
6. Jadi apa guna try catch dalam program ini? -
Try catch yaitu untuk mengecek kesalahan ada try, dan apabila terdapat kesalahan maka akan dilemparkan dan ditangkap oleh catch untuk menampilkan pesan error.
2. Latihan 2 – Multiple Block Exception
a. Source code 1. package mod4_lat2; 2. 3. import java.util.Scanner; 4. 5. public class Perpustakaan2 { 6.
public static void main(String[] args) {
7.
int [] jmlHal = new int [3];
8.
String [] judulSkripsi = new String [3];
9. 10.
Scanner input = new Scanner(System.in);
11. 12.
try{
13.
judulSkripsi[0] = "Skripsi 1";
14.
jmlHal[0] = 30;
15.
judulSkripsi[1] = "Skripsi 2";
16.
jmlHal[1] = 40;
17.
judulSkripsi[2] = "Skripsi 3";
18.
jmlHal[2] = input.nextInt();
Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
6
19.
//judulSkripsi[3] = "Skripsi 4";
20.
}
21.
catch(java.util.InputMismatchException a){
22.
System.out.println(a);
23.
}
24.
catch(ArrayIndexOutOfBoundsException b){
25.
System.out.println(b);
26.
}
27.
for(int i=0; i<3; i++){
28.
System.out.println(judulSkripsi[i]+ " " +jmlHal[i]);
29.
}
30.
}
31. }
b. Print screen hasil
c. Penjelasan 1. Ketikkan codingan berikut! -
Codingan di atas
2. Masukkan input selain angka contoh: n apa yang terjadi? -
Akan muncul pesan error java.util.InputMismatchException, karena inputan harusnya angka, bukan huruf.
3. Hapus tanda // sebelum judulskripsi[3], jalankan, masukkan angka, apa yang terjadi? Mengapa? -
Akan muncul error java.lang.ArrayIndexOutOfBoundsException: 3, karena masimal array 3, dan apabila lebih dari 3 maka akan muncul pesan error
Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
7
4. Hapus salah satu catch dan jalankan program ulangi langkah 2 dan 3, apa yang terjadi? -
Jika catch dihapus akan muncul error tergantung dari pemakaian catch tersebut.
Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
8
6. Implementasi dan Hasil Praktikum 1. Perpustakaan
a. Source code 1. package mod4_soal; 2. 3. public class KelolaBuku { 4.
private String typeBuku;
5.
private String judulBuku;
6.
private int jumlahHal;
7. 8.
public void setTypeBuku(String typeBuku) {
9.
this.typeBuku = typeBuku;
10.
}
11.
public void setJudulBuku(String judulBuku) {
12.
this.judulBuku = judulBuku;
13.
}
14.
public void setJumlahHal(int jumlahHal) {
15. 16.
this.jumlahHal = jumlahHal; }
17. 18.
public String getTypeBuku() {
19.
return typeBuku;
20.
}
21.
public String getJudulBuku() {
22.
return judulBuku;
23.
}
24.
public int getJumlahHal() {
25. 26.
return jumlahHal; }
27. } Class KelolaBuku
Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
9
1. package mod4_soal; 2. 3. import java.util.Scanner; 4. 5. public class DaftarBuku{ 6.
public static void main(String[] args) {
7.
Scanner input = new Scanner(System.in);
8.
KelolaBuku kb = new KelolaBuku();
9. 10.
String [] infoBuku = new String [1];
11.
String typeBuku, judulBuku;
12.
int mengulang, jumlahHal;
13.
int data = 0;
14. 15.
System.out.println("-------------------------------------");
16.
System.out.println("
17.
System.out.println("-------------------------------------");
18.
try{
19.
int j = 1;
20.
do{
INFO BUKU
21.
System.out.println("BUKU " +j);
22.
System.out.print("Masukkan type buku : ");
23.
typeBuku = input.next();
24.
kb.setTypeBuku(typeBuku);
");
25. 26.
System.out.print("Masukkan judul buku : ");
27.
judulBuku = input.next();
28.
kb.setJudulBuku(judulBuku);
29. 30.
System.out.print("Masukkan jumlah halaman : ");
31.
jumlahHal = input.nextInt();
32.
kb.setJumlahHal(jumlahHal);
33. Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
10
34.
infoBuku[data]
=
"
"
+kb.getTypeBuku()
+"
"
+kb.getJudulBuku() +" " +kb.getJumlahHal(); 35.
data++;
36.
j++;
37. 38.
System.out.print("\nTekan 1 untuk menambah data dan 0 untuk berhenti : ");
39.
mengulang = input.nextInt();
40.
System.out.println("");
41.
}
42.
while(mengulang != 0);
43.
}
44.
catch(java.util.InputMismatchException a){
45.
System.err.println("INPUTAN
SALAH,
JUMLAH
HALAMAN HARUS ANGKA!"); 46.
}
47.
catch(ArrayIndexOutOfBoundsException b){
48.
System.err.println("INPUTAN MAKSIMAL 3!" +b);
49.
}
50. 51.
System.out.println("\n-------------------------------------");
52.
System.out.println("
53.
System.out.println("-------------------------------------");
54.
int h=1;
55.
for(int i=0; i
HASIL INPUTAN
56.
System.out.println("BUKU KE " +h);
57.
System.out.println(infoBuku[i]);
58.
System.out.println("");
59.
h += 1;
60.
}
61.
System.out.println("-------------------------------------");
62.
");
}
63. } Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
11
Driver class DaftarBuku b. Hasil run
Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
12
c. Penjelasan Pada
soal,
program
java.util.InputMismatchException
menggunakan dan
try-catch
yaitu
ArrayIndexOutOfBoundsException
untuk menampilkan pesan error apabila ada kesalahan program.
Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq
13
7. Kesimpulan
Kesimpulan dari praktikum modul 4 yaitu membuat suatu program berbasis object kita dapat menggunakan konsep-konsep eception handling untuk mengecek apabila terjadi suatu kesalahan pada program dan menampilkan pesan error agar pengguna atau user mengetahui apabila terjadi kesalahan baik dalam program maupun pemakaian program tersebut.
Dokumen Laboratorium Teknik Informatika UMM @ 2015 – Laporan Modul Pr aktikum Laporan Praktikum
Pemrograman Berorientasi Objek (PBO) dengan Java By. 201610370311217 Riki Rizki Nur Shidiq