Modul 7 Exception Handling
Modul 7 Exception Handling
DESKRIPSI MATERI
PETUNJUK KHUSUS
A. Alokasi Waktu
Pertemuan : 13 dan 14
Jam Studi : 2 x 4 JS (8 x 50 menit)
B. Kompetensi Dasar
Mengaplikasikan exception handling.
C. Tujuan Praktikum
1. Menerapkan konsep exception handling.
2. Menangkap exception.
3. Membuat catch secara bertingkat.
4. Melemparkan exception.
5. Menggunakan klausa throws.
6. Membuat class exception sendiri.
7. Menggunakan class JList dan JComboBox.
D. Dasar Teori
1. Konsep exception handling.
Kategori error dalam pemrograman diantaranya:
a. Compilation error, yaitu error yang terjadi saat program dikompilasi.
b. Runtime error, yaitu error yang terjadi saat program dieksekusi/dijalankan.
c. Logic error, yaitu error yang terjadi saat program tidak berjalan sesuai
dengan harapan.
Exception (eksepsi atau pengecualian) adalah kondisi yang menyebabkan
program menjadi hang (tergantung) atau quit (kaluar) dari alur normal yang telah
ditentukan pada saat program dijalankan. Exception dipicu oleh runtime error,
yaitu error atau kesalahan yang terjadi saat program dieksekusi oleh interpreter.
Sedangkan exception handling (penanganan pengecualian) merupakan mekanisme
untuk menangkap exception tersebut.
E. Latihan
1. Program tanpa exception handling.
Tulislah dan simpan kode program di bawah ini:
public class WithoutExceptionHandling
{
public static void main(String[] args)
{
System.out.println("\n********* PROGRAM TANPA EXCEPTION
HANDLING *********\n");
int hasil = 9/0; //penyebab exception
System.out.println("Hasil pembagian = "+hasil);
System.out.println("Pernyataan setelah bebas dari
exception.");
}
}
CreateExceptionHandling()
{
CreateExceptionHandling(String pesan)
{
super(pesan);
}
public TryList()
{
super("MENGGUNAKAN LIST");
setSize(350,125);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public TryComboBox()
{
super("MENGGUNAKAN COMBO BOX");
setSize(350,125);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public Button1()
{
super("SHOW BUTTON 1");
setSize(300,200);
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout(FlowLayout.CENTER,0,50));
label = new JLabel("Menampilkan");
btnEvent = new JButton("BUTTON 1");
panel.add(label);
panel.add(btnEvent);
add("North", panel);
btnEvent.addActionListener(this);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==btnEvent)
{
Button2 frame = new Button2(); //menampilkan frame
dari class Button2
setVisible(false); //menyembunyikan frame dari class
Button1
}
}
}
public Button2()
{
super("SHOW BUTTON 2");
setSize(300,200);
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout(FlowLayout.CENTER,0,50));
label = new JLabel("Menampilkan");
btnEvent = new JButton("BUTTON 2");
panel.add(label);
panel.add(btnEvent);
add("South", panel);
btnEvent.addActionListener(this);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}