Java Academy · Pelajaran

Melemparkan dan Pengecualian Tersuai

Pelajari cara melemparkan pengecualian secara jelas dan mentakrifkan kelas pengecualian tersuai.

Pelajaran 1 daripada 38 langkah

Melemparkan dan Pengecualian Tersuai ialah pelajaran Java Academy percuma di CoddyKit. Ini ialah pelajaran 1 daripada 3. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Java Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Java Academy merangkumi sejumlah 3 pelajaran.

Pengenalan

Ada kalanya anda perlu menandakan ralat sendiri. Java membolehkan anda melempar pengecualian secara jelas dan juga mencipta jenis tersuai.

Kata kunci lempar

Pernyataan lempar mencipta dan menghantar pengecualian. Gunakannya di dalam kaedah untuk menunjukkan bahawa sesuatu telah berlaku dengan tidak betul.

Kod: lemparan terbina dalam

Di sini kita melempar IllegalArgumentException apabila umur terlalu kecil.

public class Main {
  static void checkAge(int age) {
    if (age < 18) {
      throw new IllegalArgumentException("Must be 18 or older");
    }
    System.out.println("Access granted");
  }
  public static void main(String[] args) {
    try {
      checkAge(15);
    } catch (IllegalArgumentException e) {
      System.out.println("Caught: " + e.getMessage());
    }
  }
}

Pengecualian tersuai

Anda boleh mencipta pengecualian tersuai sendiri. Untuk pengecualian yang disemak, lanjutkan Exception. Untuk pengecualian yang tidak disemak, lanjutkan RuntimeException.

Kod: pengecualian tersuai

Ini menunjukkan pengecualian tersuai yang disemak. Kaedah mesti mengisytiharkannya dengan throws.

public class Main {
  // Custom checked exception
  static class InvalidAgeException extends Exception {
    InvalidAgeException(String msg) { super(msg); }
  }
  static void validate(int age) throws InvalidAgeException {
    if (age < 18) throw new InvalidAgeException("Too young!");
  }
  public static void main(String[] args) {
    try {
      validate(15);
    } catch (InvalidAgeException e) {
      System.out.println("Caught custom: " + e.getMessage());
    }
  }
}

Kod: masa jalan tersuai

Pengecualian masa jalan tersuai melanjutkan RuntimeException. Pengecualian ini tidak perlu diisytiharkan.

public class Main {
  // Custom unchecked exception
  static class FatalError extends RuntimeException {
    FatalError(String msg) { super(msg); }
  }
  public static void main(String[] args) {
    try {
      throw new FatalError("Something bad happened");
    } catch (FatalError e) {
      System.out.println("Caught runtime: " + e.getMessage());
    }
  }
}

Semakan pengecualian tersuai

Semakan pantas: Bagaimanakah anda mentakrifkan pengecualian tersuai yang disemak?

Ringkasan

Ringkasan: Gunakan arahan lempar untuk menandakan ralat. Lanjutkan Exception untuk pengecualian tersuai yang disemak atau RuntimeException untuk pengecualian tersuai yang tidak disemak.

Percuma untuk bermula

Pelajari Java dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
104
Pelajaran
374

Soalan Lazim

Adakah pelajaran “Melemparkan dan Pengecualian Tersuai” percuma?

Ya — teks penuh “Melemparkan dan Pengecualian Tersuai” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Java Academy, tingkat taraf kepada CoddyKit PRO. Kursus Java Academy merangkumi sejumlah 3 pelajaran.

Apakah yang akan saya pelajari dalam “Melemparkan dan Pengecualian Tersuai”?

Pelajari cara melemparkan pengecualian secara jelas dan mentakrifkan kelas pengecualian tersuai. Anda berlatih Java Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Java Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Java Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 3.

Berapa lamakah pelajaran “Melemparkan dan Pengecualian Tersuai” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Java Academy ini?

Ya. Setiap pelajaran Java Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Melemparkan dan Pengecualian Tersuai
  2. try-with-resources (AutoCloseable)
  3. Pengaturcaraan Berwaspada
← Kembali ke Java Academy