logo

Skillnaden mellan kast och kast i Java

The throw and throws är konceptet med undantagshantering där throw-nyckelordet kastar undantaget uttryckligen från en metod eller ett kodblock medan throws-nyckelordet används i signaturen för metoden.

Det finns många skillnader mellan kasta och kastar nyckelord. En lista över skillnader mellan kast och kast ges nedan:

Herr nej. Grund för skillnader kasta kastar
1. Definition Java throw nyckelord används kasta ett undantag uttryckligen i koden, inuti funktionen eller kodblocket. Java throws nyckelord används i metodsignaturen för att deklarera ett undantag som kan kastas av funktionen under exekvering av koden.
2. Typ av undantag Med hjälp av nyckelordet throw kan vi bara sprida okontrollerat undantag, dvs. det markerade undantaget kan inte spridas med endast throw. Genom att använda nyckelordet throws kan vi deklarera både markerade och omarkerade undantag. Emellertid kan nyckelordet throws endast användas för att sprida markerade undantag.
3. Syntax Nyckelordet throw följs av en instans av undantag som ska kastas. Nyckelordet kast följs av klassnamn på undantag som ska kastas.
4. Deklaration kast används inom metoden. throws används med metodsignaturen.
5. Internt genomförande Vi får bara kasta ett undantag åt gången, dvs vi kan inte kasta flera undantag. Vi kan deklarera flera undantag med hjälp av nyckelordet throws som kan kastas av metoden. Till exempel, main() kastar IOException, SQLException.

Java-kast Exempel

TestThrow.java

 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(&apos;
Number cannot be divided by 0&apos;); } System.out.println(&apos;Rest of the code..&apos;); } } </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(&apos;Inside the method()&apos;); throw new ArithmeticException(&apos;throwing ArithmeticException&apos;); } //main method public static void main(String args[]) { try { method(); } catch(ArithmeticException e) { System.out.println(&apos;caught in main() method&apos;); } } } </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)>

Produktion:

Skillnaden mellan kast och kast i Java

Java kast och kast Exempel

TestThrowAndThrows.java

 public class TestThrowAndThrows { // defining a user-defined method // which throws ArithmeticException static void method() throws ArithmeticException { System.out.println(&apos;Inside the method()&apos;); throw new ArithmeticException(&apos;throwing ArithmeticException&apos;); } //main method public static void main(String args[]) { try { method(); } catch(ArithmeticException e) { System.out.println(&apos;caught in main() method&apos;); } } } 

Produktion:

Skillnaden mellan kast och kast i Java