Java Academy · Lektion

Kasta och skapa egna undantag

Lär er kasta undantag uttryckligen och definiera egna undantagsklasser.

Lektion 1 av 38 steg

Kasta och skapa egna undantag är en gratis lektion i Java Academy på CoddyKit. Detta är lektion 1 av 3. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Java Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Java Academy innehåller totalt 3 lektioner.

Introduktion

Ibland behöver du själv signalera ett fel. Java låter dig throw-a undantag uttryckligen och även skapa egna typer.

Nyckelordet throw

Satsen throw skapar och skickar iväg ett undantag. Använd den i metoder för att ange att något gick fel.

Kod: kasta inbyggt undantag

Här throw-ar vi ett IllegalArgumentException när age är för litet.

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());
    }
  }
}

Egna undantag

Du kan skapa egna anpassade undantag. För checked exceptions ärver du från Exception. För unchecked exceptions ärver du från RuntimeException.

Kod: eget undantag

Det här visar ett anpassat checked exception. Metoder måste deklarera det med 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: eget runtime-undantag

Egna runtime-undantag ärver från RuntimeException. De behöver inte deklareras.

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());
    }
  }
}

Kontroll av egna undantag

Snabb kontroll: Hur definierar du ett eget checked exception?

Sammanfattning

Sammanfattning: Använd throw för att signalera fel. Ärva från Exception för checked exceptions eller från RuntimeException för unchecked exceptions.

Gratis att börja

Lär dig Java med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
104
Lektioner
374

Vanliga frågor

Är lektionen ”Kasta och skapa egna undantag” gratis?

Ja – hela texten till ”Kasta och skapa egna undantag” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Java Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i Java Academy innehåller totalt 3 lektioner.

Vad lär jag mig i ”Kasta och skapa egna undantag”?

Lär er kasta undantag uttryckligen och definiera egna undantagsklasser. Ni övar på Java Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Java Academy?

Du behöver inga förkunskaper. Utbildningen i Java Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 3.

Hur lång tid tar lektionen ”Kasta och skapa egna undantag”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Java Academy-lektionen?

Ja. Varje Java Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Kasta och skapa egna undantag
  2. try-with-resources (AutoCloseable)
  3. Defensiv programmering
← Tillbaka till Java Academy