Разлика между хвърляне срещу хвърляне в Java
Изключение е събитие, което се случва по време на изпълнение на програма в Java, което по същество затруднява цялостното изпълнение на кода. Понякога системата обработва изключението по подразбиране, но в някои случаи трябва да обработваме изключение въз основа на нашия код или ситуации изрично. Предаването на изключения по персонализиран начин може да се обработва с помощта на: опитайте, хванете, хвърлете, хвърляйте и накрая ключови думи. Когато искаме да определим изключение в нашия код, ще използваме хвърляне, докато когато искаме да дефинираме няколко изключения изрично, ще използваме хвърляния. В тази тема ще обсъдим сравненията между хвърляне и хвърляне
Какво е хвърляне?
Когато искаме да обработим всяко изключение в нашия код, който не е проверен, ще използваме хвърляне. Хвърлянето може да се използва вътре в нашия код за обработка на изключенията по изричен начин. Не забравяйте, че можем да обработваме само един вид изключение наведнъж с помощта на хвърляне. Ако искате да използвате за многократно използване на хвърляне, трябва да използвате хвърляне, че много пъти.
Синтаксис:
throw
Пример:
throw new ArithmeticException();
Тези случаи на изключение трябва да бъдат подклас, наречен Throwable. Това е така, защото Throwable има своя подклас, наречен Exception, и под клас изключение, всички дефинирани от потребителя класове на изключения пребивават. Ето защо, уверете се, че използвате екземпляри с изключение, които са подкласове под линията на подхвърляне
Сега, нека разберем потока на програмата, когато я използваме за хвърляне. Кодът ще тече, докато не достигне хвърлянето и след това, той ще търси блока за пробвания. Опитният блок се изследва, за да се провери дали има някакъв оператор вътре в блока за улавяне, който спомена изключение, подобно на събитието. Ако да, тогава контролът се премества към това. Ако не, тя ще потърси следващия блок за опит и това ще продължи. Да предположим, че не намира никакъв такъв проб-блок за обработка на изключение, тогава системата ще обработва изключение, използвайки обработващ по подразбиране изключение и кодът ще бъде прекратен.
Какво е хвърляне?
Когато приемаме, че метод може да показва някои изключения в нашия код въз основа на опит, ние споменаваме всички изключения в подписа на метода чрез използване на ключовата дума хвърля. Всички изключения ще бъдат споменати разделени със запетаи.
Синтаксис:
() throws,
Пример:
void ExceptionExample() throws ArithmeticException, NullPointerException
(
//code
)
Тъй като имате представа какво правят хвърлянията и хвърлянията, нека да разгледаме разликите между хвърлянията и хвърлянията, както е посочено по-долу:
Сравнение между главата и хвърлянето (Инфографика)
По-долу са топ 5 разликите между Throw срещу Throw в Java
Ключови разлики между Хвърляне срещу Хвърляне
Нека да разгледаме ключовите разлики между Хвърлянето срещу Хвърлянията в Java, както е по-долу:
- Когато искаме да определим изключение вътре в нашия код, ще използваме хвърляне. Но когато искаме да дефинираме изключенията изрично, ще използваме хвърляния.
- Ако използваме хвърляне, кодът не може да тече в случай на проверени изключения. Когато са проверени изключенията, те могат да се предават с помощта на хвърляния
- Синтаксисно, ние пишем променлива за пример след хвърляне. Имайки предвид, че пишем изключителни класове, разделени със запетаи след хвърляния
- Използваме хвърляне под определение на метод. Като има предвид, че ние обявяваме хвърляне изключение в подписа на метод.
- Throw има ограничение за работа с единственото изключение в даден момент. От друга страна, Throw може да се справи с множество изключения.
Хвърлете срещу Таблицата за сравнение
Нека да обсъдим топ сравнение между Throw срещу Throw в Java
Основа за сравнение между Хвърляне срещу Хвърляне |
хвърлям |
Хвърля |
Как или кога да се използва | В тези случаи, когато трябва да предоставим логическо изключение вътре в кода, в тези случаи обикновено използваме ключовата дума хвърляне под функция.
| В тези случаи, когато операторът на функция може да доведе до изключение, ние в тези случаи обикновено използваме хвърляща ключова дума с функция за обработка на тези изключения.
|
Относно броя на изключенията | В един момент от време хвърлянето може да се използва за хвърляне само на едно изключение. Когато трябва да хвърлим определено изключение, ще използваме хвърляне.
Например:
| Хвърлянията могат да се справят с множество изключения. Когато трябва да обработваме множество изключения, можем да използваме хвърляния, където името на изключенията се споменава с разделителна запетая. Когато се случи някакво изключение, то автоматично ще съвпада с декларираните изключения с хвърляния и съответно ще се справи.
Например:
|
От гледна точка на синтаксиса | Използваме хвърляне във функция и за обработка на един вид изключение
Например:
| Ще използваме хвърляне с функция, за да обработваме няколко изключения наведнъж, като използваме името на тези класове на изключения.
Например:
|
Проверена / непроверена перспектива | Проверените изключения не могат да се обработват чрез хвърляне. Той може да обработва само непроверени изключения, които не могат да бъдат обработвани чрез хвърляния или проверени изключения.
Например:
| Когато знаем изключението apriori и споменем тези в хвърляния, те ще станат проверени изключения.
Например:
|
Пример за код | Хвърли:
| Хвърля:
|
заключение
Това са разлики между хвърлянията и хвърлянията в Java. Хвърлянията могат да ви дадат свобода да използвате няколко изключения наведнъж, но хвърлянето не може. Основно на това разграничение, трябва да използвате хвърляния, ако трябва да предоставите няколко изключения наведнъж, ако не сте сигурни, тогава просто използвайте хвърляне, за да поставяте изключения едно по едно.
Препоръчителни статии
Това е ръководство за Хвърляне срещу Хвърляне в Java. Тук обсъждаме основните разлики между хвърлянията и хвърлянията в java с инфографиката и таблицата за сравнение. Можете да разгледате и другите ни предложени статии, за да научите повече -
- Java List vs Array List
- JavaScript срещу VBScript
- PHP срещу JavaScript
- C срещу Java