Różnica między rzutami a rzutami w Javie
Wyjątkiem jest zdarzenie, które ma miejsce podczas wykonywania programu w Javie, co w zasadzie utrudnia ogólne wykonanie kodu. Czasami system domyślnie obsługuje wyjątek, ale w niektórych przypadkach musimy jawnie obsłużyć wyjątek na podstawie naszego kodu lub sytuacji. Przekazanie wyjątku w spersonalizowany sposób można rozwiązać za pomocą: spróbuj, złap, rzucaj, rzuca i wreszcie słowa kluczowe. Kiedy chcemy zdefiniować wyjątek w naszym kodzie, użyjemy rzucania, natomiast gdy chcemy jawnie zdefiniować wiele wyjątków, użyjemy rzuceń. W tym temacie omówimy porównania między rzutami a rzutami
Co to jest rzut?
Kiedy chcemy obsłużyć każdy wyjątek w naszym kodzie, który nie jest zaznaczony, użyjemy funkcji throw. Rzut może być użyty w naszym kodzie, aby obsłużyć wyjątki w sposób jawny. Pamiętaj, że możemy obsłużyć tylko jeden typ wyjątku na raz za pomocą rzutu. Jeśli chcesz użyć rzutu wielokrotnego, musisz użyć rzutu tyle razy.
Składnia:
throw
Przykład:
throw new ArithmeticException();
Te wyjątki muszą znajdować się w klasie niższej pod nazwą Throwable. Wynika to z tego, że Throwable ma swoją podklasę o nazwie Wyjątek, aw klasie wyjątków znajdują się wszystkie klasy wyjątków zdefiniowane przez użytkownika. Dlatego upewnij się, że używasz instancji wyjątków, które są podklasami pod linią do rzucania
Teraz zrozummy przepływ programu, gdy używamy go do rzucania. Kod będzie przepływał, aż dotrze do rzutu, a następnie wyszuka blok try-catch. Blok try jest sprawdzany w celu sprawdzenia, czy w bloku catch znajduje się instrukcja, która wspomniała o wyjątku podobnym do wystąpienia. Jeśli tak, kontrola jest do tego przenoszona. Jeśli nie, wyszuka następny blok try-catch i będzie to kontynuowane. Załóżmy, że nie znajdzie takiego bloku try-catch do obsługi wyjątku, wówczas system obsłuży wyjątek za pomocą domyślnej procedury obsługi wyjątku, a kod zostanie zakończony.
Co to są rzuty?
Kiedy zakładamy, że metoda może pokazywać pewne wyjątki w naszym kodzie na podstawie doświadczenia, wspominamy o wszystkich wyjątkach w sygnaturze metody za pomocą słowa kluczowego throws. Wszystkie wyjątki zostaną wymienione oddzielone przecinkami.
Składnia:
() throws,
Przykład:
void ExceptionExample() throws ArithmeticException, NullPointerException
(
//code
)
Kiedy masz pojęcie, co robią rzuty i rzuty, przyjrzyjmy się różnicom między rzutami i rzutami, jak poniżej:
Porównanie między rzutami a rzutami (infografiki)
Poniżej znajduje się 5 najważniejszych różnic między rzutami a rzutami w Javie
Kluczowe różnice między rzutami a rzutami
Przyjrzyjmy się kluczowym różnicom między rzutami a rzutami w Javie, jak poniżej:
- Kiedy chcemy zdefiniować wyjątek w naszym kodzie, użyjemy funkcji throw. Ale kiedy chcemy jawnie zdefiniować wyjątki, użyjemy rzutów.
- Jeśli użyjemy rzutu, kod nie może przepłynąć w przypadku sprawdzonych wyjątków. Gdy zaznaczone są wyjątki, można je przepłynąć za pomocą rzutów
- Pod względem składniowym piszemy zmienną dla instancji po rzucie. Podczas gdy piszemy klasy wyjątków, oddzielamy je przecinkami
- Używamy rzutu zgodnie z definicją metody. Podczas gdy deklarujemy zgłasza wyjątek w podpisie metody.
- Rzut ma ograniczenie obsługi jedynego wyjątku na raz. Z drugiej strony, Rzuty mogą obsługiwać wiele wyjątków.
Tabela porównawcza rzutów i rzutów
Omówmy najlepsze porównanie między rzutami a rzutami w Javie
Podstawa porównania między rzutami a rzutami |
Rzucać |
Rzuty |
Jak lub kiedy używać | W tych przypadkach, gdy musimy podać logiczny wyjątek w kodzie, zazwyczaj używamy słowa kluczowego throw w funkcji.
| W tych przypadkach, gdy instrukcja funkcji może spowodować wyjątek, w takich przypadkach zwykle używamy słowa kluczowego throws z funkcją do obsługi tych wyjątków.
|
Na podstawie wyjątku | W jednym momencie rzut można wykorzystać do rzucenia tylko jednego wyjątku. Kiedy musimy rzucić określony wyjątek, użyjemy rzutu.
Na przykład:
| Rzuty mogą obsługiwać wiele wyjątków. Kiedy musimy obsłużyć wiele wyjątków, możemy użyć rzutów, w których nazwy wyjątków są wymienione przecinkami. Kiedy wystąpi jakiś wyjątek, automatycznie dopasuje się do zadeklarowanych wyjątków z rzutami i odpowiednio się zajmie.
Na przykład:
|
Z perspektywy składni | Używamy funkcji rzutowania wewnątrz funkcji i do obsługi jednego rodzaju wyjątku
Na przykład:
| Użyjemy funkcji throw z funkcją do obsługi wielu wyjątków za jednym razem, używając nazw tych klas wyjątków.
Na przykład:
|
Sprawdzona / niezaznaczona perspektywa | Zaznaczone wyjątki nie mogą być obsługiwane przez rzut. Może obsługiwać tylko niezaznaczone wyjątki, których nie można obsłużyć przez rzucanie lub sprawdzone wyjątki.
Na przykład:
| Kiedy poznamy wyjątek apriori i wspomnimy o tych w rzutach, staną się sprawdzonymi wyjątkami.
Na przykład:
|
Przykład kodu | Rzucać:
| Rzuty:
|
Wniosek
Są to różnice między rzutami i rzutami w Javie. Rzuty mogą dać ci swobodę korzystania z wielu wyjątków za jednym razem, ale rzut nie może. Opierając się głównie na tym rozróżnieniu, musisz użyć rzutów, jeśli musisz podać wiele wyjątków za jednym razem, jeśli nie jesteś pewien, po prostu użyj rzutu, aby umieścić wyjątki jeden po drugim.
Polecane artykuły
Jest to przewodnik po Throw vs. Throw w Javie. Tutaj omawiamy kluczowe różnice między rzutami a rzutami w Javie z infografiką i tabelą porównawczą. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -
- Lista Java a lista macierzy
- JavaScript vs VBScript
- PHP vs JavaScript
- C vs Java