Własne wyjątki
Część sekcji Logika i przepływ sterowania ścieżki Java w Coddy. Lekcja 43 z 59.
Możesz utworzyć własną klasę wyjątków, rozszerzając klasę Exception. Jest to przydatne, gdy musisz obsługiwać określone typy błędów w swojej aplikacji.
Oto jak utworzyć własny wyjątek:
public class AgeException extends Exception {
public AgeException(String message) {
super(message);
}
}A oto jak tego użyć:
if (age < 0) {
throw new AgeException("Invalid age: " + age);
}Po wykonaniu powyższego kodu z age = -5 program zgłasza wyjątek:
AgeException: Invalid age: -5
Wyzwanie
ŁatwyUtwórz niestandardową klasę wyjątku o nazwie EmailException oraz metodę o nazwie validateEmail, która przyjmuje jeden argument:
- String (
email) do sprawdzenia
Metoda powinna zgłaszać niestandardowy wyjątek z następującymi komunikatami:
- Jeśli email ma wartość null: "Email cannot be null"
- Jeśli email jest pusty: "Email cannot be empty"
- Jeśli email nie zawiera znaku @: "Email must contain @"
- Jeśli email nie zawiera żadnego tekstu przed znakiem @: "Email must have a local part"
- Jeśli sprawdzanie się powiedzie: zwróć "Valid email"
Spróbuj swoich sił
import java.util.Scanner;
class EmailException extends Exception {
public EmailException(String message) {
super(message);
}
}
public class Main {
public static String validateEmail(String email) throws EmailException {
// Napisz tutaj swój kod
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String email = scanner.nextLine();
if (email.equals("null")) {
email = null;
}
try {
System.out.println(validateEmail(email));
} catch (EmailException e) {
System.out.println(e.getMessage());
}
}
}Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Logika i przepływ sterowania
1Tablice wielowymiarowe
Podstawy tablic 2DDostęp do elementów tablic 2DPętle zagnieżdżone z tablicami 2DPodsumowanie — tablice 2DDodawanie i odejmowanie macierzyTablice postrzępioneTablice 3D i większeTypowe wzorce dla tablic 2DPodsumowanie — wszystko o tablicach2HashMap część 1
Czym jest HashMap?Deklarowanie HashMapDostęp do wartościSprawdzanie, czy klucz istniejeModyfikowanie słownikówPodsumowanie — HashMap3HashMap — część 2
Metody HashMapIterowanie za pomocą keySet()Iterowanie za pomocą entrySet()Zagnieżdżona HashMapPowtórka — zarządzanie magazynemPowtórka — operacje na HashMap6Zaawansowany przepływ sterowania
Instrukcje etykietująceWyrażenie switchDopasowywanie wzorcówKlauzule ochronnePowtórzenie — przepływ sterowania9Projekt — licznik unikalnych słów
Wprowadzanie i przechowywanie tekstuPrzetwarzanie słówPoćwicz samodzielnie: Kompilator Java online