logo

Java baca ključnu riječ

The Java baca ključnu riječ koristi se za proglašavanje iznimke. Daje informaciju programeru da može doći do iznimke. Stoga je bolje da programer osigura kod za rukovanje iznimkama kako bi se mogao održati normalan tijek programa.

Rukovanje iznimkama se uglavnom koristi za rukovanje provjerenim iznimkama. Ako se dogodi bilo kakva neprovjerena iznimka kao što je NullPointerException, programer je kriv što ne provjerava kod prije nego što se upotrijebi.

nije null u js

Sintaksa Java bacanja

 return_type method_name() throws exception_class_name{ //method code } 

Koju iznimku treba proglasiti?

Godine: Provjerena samo iznimka, jer:

    neprovjerena iznimka:pod našom kontrolom kako bismo mogli ispraviti naš kod.greška:izvan naše kontrole. Na primjer, ne možemo ništa učiniti ako se pojavi VirtualMachineError ili StackOverflowError.

Prednost Java baca ključne riječi

Now Checked Exception se može propagirati (proslijediti u stogu poziva).

Pruža informacije pozivatelju metode o iznimci.

Java baca Primjer

Pogledajmo primjer Java throws klauzule koja opisuje da se provjerene iznimke mogu propagirati pomoću throws ključne riječi.

Testthrows1.java

 import java.io.IOException; class Testthrows1{ void m()throws IOException{ throw new IOException('device error');//checked exception } void n()throws IOException{ m(); } void p(){ try{ n(); }catch(Exception e){System.out.println('exception handled');} } public static void main(String args[]){ Testthrows1 obj=new Testthrows1(); obj.p(); System.out.println('normal flow...'); } } 
Testirajte sada

Izlaz:

 exception handled normal flow... 

Pravilo: Ako pozivamo metodu koja deklarira iznimku, moramo ili uhvatiti ili deklarirati iznimku.

Postoje dva slučaja:

primjeri javascript koda
    Slučaj 1:Uhvatili smo iznimku, tj. riješili smo iznimku pomoću bloka pokušaj/uhvati.Slučaj 2:Deklarirali smo iznimku, tj. specificiranu ključnu riječ throws s metodom.

Slučaj 1: Rukovanje iznimkom pomoću bloka try-catch

U slučaju da riješimo iznimku, kod će se dobro izvršiti bez obzira na to dogodi li se iznimka tijekom programa ili ne.

Testthrows2.java

 import java.io.*; class M{ void method()throws IOException{ throw new IOException('device error'); } } public class Testthrows2{ public static void main(String args[]){ try{ M m=new M(); m.method(); }catch(Exception e){System.out.println('exception handled');} System.out.println('normal flow...'); } } 
Testirajte sada

Izlaz:

 exception handled normal flow... 

Slučaj 2: Objavite iznimku

  • U slučaju da proglasimo iznimku, ako se iznimka ne dogodi, kod će se dobro izvršiti.
  • U slučaju da proglasimo iznimku i iznimka se dogodi, bit će izbačena tijekom izvođenja jer bacanja ne obrađuje izuzetak.

Pogledajmo primjere za oba scenarija.

A) Ako se iznimka ne dogodi

Testthrows3.java

 import java.io.*; class M{ void method()throws IOException{ System.out.println('device operation performed'); } } class Testthrows3{ public static void main(String args[])throws IOException{//declare exception M m=new M(); m.method(); System.out.println('normal flow...'); } } 
Testirajte sada

Izlaz:

vrijeme večere protiv večere
 device operation performed normal flow... 

B) Ako se dogodi iznimka

Testthrows4.java

 import java.io.*; class M{ void method()throws IOException{ throw new IOException('device error'); } } class Testthrows4{ public static void main(String args[])throws IOException{//declare exception M m=new M(); m.method(); System.out.println('normal flow...'); } } 
Testirajte sada

Izlaz:

Java throw ključna riječ

Razlika između bacanja i bacanja

Kliknite me za detalje

Que) Možemo li ponovno izbaciti iznimku?

Da, bacanjem iste iznimke u catch blok.