The throw and throws er konseptet med unntakshåndtering der throw-nøkkelordet kaster unntaket eksplisitt fra en metode eller en kodeblokk, mens throws-nøkkelordet brukes i signaturen til metoden.
Det er mange forskjeller mellom kaste og kaster søkeord. En liste over forskjeller mellom kast og kast er gitt nedenfor:
Mr. nei. | Grunnlag for forskjeller | kaste | kaster |
---|---|---|---|
1. | Definisjon | Java throw nøkkelord brukes kaste et unntak eksplisitt i koden, inne i funksjonen eller kodeblokken. | Java throws nøkkelord brukes i metodesignaturen for å erklære et unntak som kan bli kastet av funksjonen mens koden utføres. |
2. | Type unntak Ved å bruke throw nøkkelord, kan vi bare forplante uavmerket unntak, dvs. at det sjekkede unntaket kan ikke spres med bare throw. | Ved å bruke throws-nøkkelord kan vi erklære både avmerket og uavmerket unntak. Imidlertid kan nøkkelordet throws bare brukes til å spre sjekkede unntak. | |
3. | Syntaks | Søkeordet kaste blir fulgt av en forekomst av unntak som skal kastes. | Nøkkelordet kast etterfølges av klassenavn på unntak som skal kastes. |
4. | Erklæring | kast brukes innenfor metoden. | kast brukes med metodesignaturen. |
5. | Intern gjennomføring | Vi har bare lov til å kaste ett unntak om gangen, det vil si at vi ikke kan kaste flere unntak. | Vi kan erklære flere unntak ved å bruke throws nøkkelord som kan kastes av metoden. For eksempel, main() kaster IOException, SQLException. |
Java-kast eksempel
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(' 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)>
Produksjon:
Java kast og kast Eksempel
TestThrowAndThrows.java
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'); } } }
Produksjon:
1)>