Brukerdefinert unntak i Java

Hva er brukerdefinert unntak i Java?

Brukerdefinert unntak eller tilpasset unntak oppretter din egen unntaksklasse og kaster det unntaket ved å bruke "kast" nøkkelord. Dette kan gjøres ved å utvide klassen Unntak.


Brukerdefinert unntak i Java

Det er ikke nødvendig å overstyre noen av metodene ovenfor som er tilgjengelige i Exception-klassen, i din avledede klasse. Men praktisk talt vil du kreve litt tilpasning i henhold til dine programmeringsbehov.

Når du skal bruke brukerdefinerte unntak i Java?

Brukerdefinerte unntak i Java er tilpassede unntak opprettet for å håndtere spesifikke feiltilstander i applikasjonen din. De gir fleksibilitet ved å la utviklere definere sine feilscenarier.

  • Håndter spesifikke applikasjonsfeil: Hvis applikasjonen din møter et scenario som standard unntak ikke kan dekke, oppretter du et brukerdefinert unntak for å løse den situasjonen.
  • Forbedre lesbarhet og feilsøking: Brukerdefinerte unntak gir mer klarhet ved å eksplisitt indikere problemet, noe som gjør feilsøking enklere.
  • Sørg for ren kodestruktur: Disse unntakene bidrar til å opprettholde ren kode, ettersom de skiller feilhåndteringslogikk fra kjernefunksjonaliteten.
  • Forbedre kodevedlikehold: Brukerdefinerte unntak lar deg oppdatere feilhåndtering uten å endre hele koden, noe som gjør vedlikeholdet mer effektivt.

Eksempel: For å opprette en brukerdefinert unntaksklasse

Trinn 1) Kopier følgende kode inn i editoren

class JavaException{
   public static void main(String args[]){
  try{
       throw new MyException(2);
       // throw is used to create a new exception and throw it.
  }
 catch(MyException e){
    System.out.println(e) ;
 }
}
}
class MyException extends Exception{
   int a;
   MyException(int b) {
     a=b;
   }
   public String toString(){
     return ("Exception Number =  "+a) ;
  }
}

Trinn 2) Lagre, kompiler og kjør koden. Unntatt utgang –

Brukerdefinert unntak i Java

MERK: Nøkkelordet "kaste" brukes til å opprette et nytt unntak og kaste det til fangstblokken.