Тхров анд тхровс је концепт руковања изузетком где кључна реч тхров баца изузетак експлицитно из методе или блока кода, док се кључна реч тхровс користи у потпису методе.
Постоји много разлика између бацити и баца кључне речи. Списак разлика између бацања и бацања је дат у наставку:
г. бр. | Основа разлика | бацити | баца |
---|---|---|---|
1. | Дефиниција | Јава тхров кључна реч се користи избацити изузетак експлицитно у коду, унутар функције или блока кода. | Јава тхровс кључна реч се користи у потпису методе за декларисање изузетка који може бити изазван од стране функције током извршавања кода. |
2. | Тип изузетка Користећи кључну реч тхров, можемо само да пропагирамо непроверени изузетак, тј. проверени изузетак не може да се пропагира користећи само тхров. | Користећи кључну реч тхровс, можемо декларисати и проверене и непроверене изузетке. Међутим, кључна реч тхровс може да се користи само за пропагирање проверених изузетака. | |
3. | Синтакса | Кључну реч тхров прати инстанца изузетка која треба да се избаци. | Након кључне речи тхровс следе имена класа изузетака који ће бити избачени. |
4. | Декларација | тхров се користи у оквиру методе. | тхровс се користи са потписом методе. |
5. | Интерна имплементација | Дозвољено нам је да избацимо само један изузетак у исто време, тј. не можемо да избацимо више изузетака. | Можемо декларисати више изузетака користећи кључну реч тхровс која се може избацити методом. На пример, маин() избацује ИОЕкцептион, СКЛЕкцептион. |
Јава бацање Пример
ТестТхров.јава
public class TestThrow { //defining a method public static void checkNum(int num) { if (num <1) { throw new arithmeticexception(' number is negative, cannot calculate square'); } else system.out.println('square of ' + num (num*num)); main method public static void main(string[] args) testthrow obj="new" testthrow(); obj.checknum(-3); system.out.println('rest the code..'); < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/exception-handling/22/difference-between-throw.webp" alt="Difference between throw and throws in Java"> <h2>Java throws Example</h2> <p> <strong>TestThrows.java</strong> </p> <pre> public class TestThrows { //defining a method public static int divideNum(int m, int n) throws ArithmeticException { int div = m / n; return div; } //main method public static void main(String[] args) { TestThrows obj = new TestThrows(); try { System.out.println(obj.divideNum(45, 0)); } catch (ArithmeticException e){ System.out.println(' Number cannot be divided by 0'); } System.out.println('Rest of the code..'); } } </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/exception-handling/22/difference-between-throw-2.webp" alt="Difference between throw and throws in Java"> <h2>Java throw and throws Example</h2> <p> <strong>TestThrowAndThrows.java</strong> </p> <pre> public class TestThrowAndThrows { // defining a user-defined method // which throws ArithmeticException static void method() throws ArithmeticException { System.out.println('Inside the method()'); throw new ArithmeticException('throwing ArithmeticException'); } //main method public static void main(String args[]) { try { method(); } catch(ArithmeticException e) { System.out.println('caught in main() method'); } } } </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/exception-handling/22/difference-between-throw-3.webp" alt="Difference between throw and throws in Java"> <hr></1)>
Излаз:
Јава баца и баца Пример
ТестТхровАндТхровс.јава
р ин ц програмирање
public class TestThrowAndThrows { // defining a user-defined method // which throws ArithmeticException static void method() throws ArithmeticException { System.out.println('Inside the method()'); throw new ArithmeticException('throwing ArithmeticException'); } //main method public static void main(String args[]) { try { method(); } catch(ArithmeticException e) { System.out.println('caught in main() method'); } } }
Излаз:
1)>