Wprowadzenie do rzucania słowem kluczowym w Javie
To słowo kluczowe Throw jest powszechnie stosowane w koncepcji obsługi wyjątków. Jak sama nazwa wskazuje, słowo kluczowe throw służy do wyrzucenia wyjątku z programu do kompilatora. Omówienie wyjątku; jest to rodzaj błędu, który kompilator wyskakuje z programu w przypadku wystąpienia rozbieżności w czasie wykonywania kodu. Używając tego słowa kluczowego throw, możemy zdefiniować nasz wyjątek, interpretując dowolną przyczynę błędów w czasie wykonywania programu.
Zobaczmy więcej szczegółów poniżej:
Składnia
Składnia throw w Javie jest następująca:
throw exception_type ;
lub
throw instance;
Praca w Javie
Możemy tutaj sprawdzić, w jaki sposób słowo kluczowe jest faktycznie używane i zrozumieć, jak faktycznie działa przepływ na przykładzie.
import java.util.Scanner;
public class Main
(
public static void main(String() args) (
int c;
Scanner sc = new Scanner(System.in);
System.out.println("Enter value of A: ");
int a = sc.nextInt();
//Scanner b = new Scanner(System.in);
System.out.println("Enter value of B: ");
int b = sc.nextInt();
try (
c= a/b;
if(b==0)
(
throw new ArithmeticException();
)
System.out.println("Value of C is: " +c);
)
catch(ArithmeticException e) (
System.out.println("Caught this here");
)
finally (
)
System.out.println("Finally block is here");
)
)
Zajmijmy się tym klasycznym i prostym przykładem podziału na zero.
Analizując poniższy kod:
- Po pierwsze, zaimportowaliśmy moduł skanera, aby pobrać wartości wprowadzone przez użytkownika.
- Czytamy dwie liczby, a mianowicie „A” i „B”, które są podane jako dane wejściowe dla użytkownika.
- Zadeklarowaliśmy zmienną „C” do przechowywania wartości ilorazu po podzieleniu liczby „A” przez „B”.
- Ponieważ liczby mogą być losowo podawane przez użytkownika, możemy pomyśleć o sytuacji, w której użytkownik może podać dzielnik jako zero.
- Akceptując ten scenariusz, piszemy nasz kod podziału w bloku try.
- I pisząc, jeśli warunek, że w przypadku gdy wartość „B” ma zero, wówczas zgłaszamy wyjątek.
- Po próbie zawsze następuje blok catch.
- Więc tutaj wspominamy wyjątek, który zdefiniowaliśmy za pomocą nowego polecenia według słowa kluczowego.
- Ten sam wyjątek występuje i właśnie wydrukowaliśmy poniższe oświadczenie, aby uzyskać wyraźne zrozumienie w osiąganiu wypróbowania, rzutu, złapania i wreszcie.
- I w końcu ogłaszamy nasz wreszcie blok. Jak już wiadomo, instrukcje w tym bloku na pewno zostaną wykonane.
Sprawdźmy wynik poniżej.
Wyjście 1: Jeśli wartość b nie jest zerem.
Widzimy wyraźnie, że nie są wykonywane bloki try, try i catch, ponieważ wartość „B” jest różna od zera. I wreszcie blok został wykonany niezależnie od utworzenia wyjątku.
Wyjście 2: Jeśli wartość b wynosi zero.
Podświetlona część zapewnia, że wyjątek zostanie pomyślnie zgłoszony i przechwycony przez blok catch.
Zobaczmy więc przykład poniżej.
Przykład:
Zobaczmy, jak możemy zgłosić wiele wyjątków w jednym programie.
public class Main
(
public static void main(String() args) (
String sun() = ("chocolate", "honey", "sugar", "sweet", "bitter");
String h = null;
try (
for (int i=0; i<=7; i++)
(
if(i > sun.length)
(
throw new ArrayIndexOutOfBoundsException();
)
System.out.println(sun(i));
)
)
catch(ArrayIndexOutOfBoundsException ae)
(
System.out.println("Inside array index out of bounds exception catch block");
)
try(
sun(0)=h;
if (sun(0) == null)
(
throw new NullPointerException();
)
System.out.println("Value of sun(0) is: " +sun(0));
)
catch(NullPointerException f)
(
System.out.println("Caught Null point exception");
)
finally (
System.out.println("executing finally");
)
)
)
Powyżej użyliśmy dwóch różnych typów wyjątków i użyliśmy słowa kluczowego throw do interpretacji programu. Indeks tablicy poza zakresem i wyjątek wskaźnika zerowego są tym, czego użyliśmy tutaj w jednym programie.
Wynik:
Znaczenie rzutu
To słowo kluczowe rzucania pomogłoby nam działać jako pomost między blokami try-catch. Pomoże to w przeniesieniu kontroli programu z bloku try do bloku catch.
Pokażę przykład działania programu z użyciem słowa kluczowego throw i bez niego.
public class Main
(
public static void main(String() args) (
try (
int a = Integer.parseInt ("Happy") ;
System.out.println("Will this get printed?");
) catch(NumberFormatException e) (
System.out.println("Number format exception of catch block");
)
System.out.println("Priting after catch block");
)
)
Napisaliśmy kod bez słowa kluczowego throw. Ale użyliśmy tego kodu w bloku try-catch, który w rzeczywistości obsłuży wyjątek. Czy znasz wynik powyższego?
Oczekiwany, prawda? Więc wykonał kod, znalazł wyjątek i wyjątek został przechwycony.
Jak działa kod, kiedy wstawiamy naszą instrukcję throw? Zobaczmy poniżej.
public class Main
(
public static void main(String() args) (
try (
int a = Integer.parseInt ("Happy") ;
throw new NumberFormatException();
System.out.println("Will this get printed?");
) catch(NumberFormatException e) (
System.out.println("Number format exception of catch block");
)
System.out.println("Priting after catch block");
)
)
Jedynie podświetlona część to zmiana między powyższymi dwoma kodami.
Wynik:
Tak, wystąpił błąd kompilacji, ponieważ instrukcja print po słowie kluczowym throw jest nieosiągalną instrukcją. W tym przykładzie mamy nadzieję, że zrozumiałeś, co to dokładnie znaczy „przeniesienie kontroli z próby złapania bloku”.
W ramach ćwiczenia spróbuj usunąć instrukcję print po rzuceniu słowa kluczowego, sprawdź, jak program zareaguje.
Wniosek - Rzuć słowo kluczowe w Javie
Tak oto pojawiło się polecenie rzucania w momencie obsługi wyjątku. I zauważ, że istnieje dobra różnica między słowem kluczowym THROW a THROWS. Oba są używane z pojęciem wyjątków. Znaliśmy już tę koncepcję, jak i gdzie faktycznie możemy użyć słowa kluczowego „RZUT”. Po prostu poćwicz i spróbuj użyć go na różne sposoby. Ucz się.
Polecane artykuły
Jest to przewodnik po rzucaniu słów kluczowych w Javie. Tutaj omawiamy wprowadzenie, pracę w Javie i znaczenie rzucania. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -
- Chronione słowo kluczowe w Javie
- Dla pętli w JavaScript
- Podczas pętli w Javie
- Kontynuuj Instrukcja w Javie
- Kontynuuj pracę instrukcji w języku C # z przykładami