Senin, 22 Oktober 2018

Java Tutorial - Exceptions Try...Catch

Java Exceptions

Ketika mengeksekusi arahan Java, kesalahan yang berbeda sanggup terjadi: kesalahan pengkodean yang dibentuk oleh programmer, kesalahan alasannya ialah input yang salah, atau hal yang tidak terduga lainnya.Ketika kesalahan terjadi, Java biasanya akan berhenti dan menghasilkan pesan kesalahan. Istilah teknis untuk ini adalah: Java akan melempar pengecualian (melempar kesalahan).

Java try and catch

Pernyataan try memungkinkan Anda untuk memilih blok arahan yang akan diuji untuk kesalahan dikala sedang dieksekusi.
Pernyataan catch memungkinkan Anda memilih blok arahan yang akan dieksekusi, jikalau kesalahan terjadi di blok coba.
Kata try dan kata kunci catch berpasangan:

Syntax

try {
  //  Block of code to try}
catch(Exception e) {
  //  Block of code to handle errors}
Perhatikan referensi berikut:
Ini akan menghasilkan kesalahan, alasannya ialah myNumber [10] tidak ada.
public class MyClass {
  public static void main(String[ ] args) {
    int[] myNumbers = {123};
    System.out.println(myNumbers[10]); // error!  }
}
Outputnya akan menyerupai ini:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 10
        at MyClass.main(MyClass.java:4)
Run example »
Jika kesalahan terjadi, kita sanggup menggunakan try...catch untuk menangkap kesalahan dan menjalankan beberapa arahan untuk menanganinya:
public class MyClass {
  public static void main(String[ ] args) {
    try {
      int[] myNumbers = {123};
      System.out.println(myNumbers[10]);
    catch (Exception e) {
      System.out.println("Something went wrong.");
    }
  }
}
Outputnya adalah:
Something went wrong.
Run example »

Finally

Pernyataan finally memungkinkan Anda mengeksekusi kode, setelah try...catch, terlepas dari hasilnya:

Contoh

public class MyClass {
  public static void main(String[] args) {
    try {
      int[] myNumbers = {123};
      System.out.println(myNumbers[10]);
    } catch (Exception e) {
      System.out.println("Something went wrong.");
    finally {
      System.out.println("The 'try catch' is finished.");
    }
  }
}
Outputnya adalah:
Something went wrong.
The 'try catch' is finished.
Run example »

The throw keyword

Pernyataan throw memungkinkan Anda menciptakan kesalahan khusus.
Pernyataan throw digunakan bersama dengan jenis pengecualian. Ada banyak jenis pengecualian yang tersedia di Java: ArithmeticExceptionClassNotFoundExceptionArrayIndexOutOfBoundsExceptionSecurityException, dll.

Jenis pengecualian sering dipakai bersama dengan metode khusus. Jangan khawatir jikalau Anda tidak memahami referensi di bawah ini, Anda akan mencar ilmu lebih banyak perihal metode di belahan berikutnya:

Contoh

Buang pengecualian jikalau usia di bawah 18 (cetak "Akses ditolak"). Jika usia 18 atau lebih, cetak "Akses diberikan":
public class MyClass {
  static void checkAge(int age) { 
    if (age < 18) {
      throw new ArithmeticException("Access denied - You must be at least 18 years old."); 
    }
    else {
      System.out.println("Access granted - You are old enough!"); 
    }
  } 

  public static void main(String[] args) { 
    checkAge(15); // Set age to 15 (which is below 18...)  } 
}
Outputnya adalah:
Exception in thread "main" java.lang.ArithmeticException: Access denied - You must be at least 18 years old.
        at MyClass.checkAge(MyClass.java:4)
        at MyClass.main(MyClass.java:12)
Run example »
Jika usia 20 tahun, Anda tidak akan mendapat pengecualian:

Contoh

checkAge(20);
Outputnya adalah:
Access granted - You are old enough!
Run example »