Kasta och skapa egna undantag
Lär er kasta undantag uttryckligen och definiera egna undantagsklasser.
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.
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
- Kasta och skapa egna undantag
- try-with-resources (AutoCloseable)
- Defensiv programmering