I programmeringssprog giver fejlfinding os mulighed for at udføre forskellige funktioner korrekt ved at spørge udvikleren. I et sådant tilfælde kan der være tilfælde, hvor udvikleren kan stå over for ' java.lang.NullPointerException 'på en bestemt' nul ”-værdi, mens der håndteres massedata. Denne undtagelse skal håndteres for at strømline kodefunktionaliteterne.
Denne blog vil uddybe tilgange til at håndtere ' java.lang.NullPointerException ”.
Hvordan løser man 'java.lang.NullPointerException'?
Det ' java.lang.NullPointerException ” returneres, når en referencevariabel påkaldes (eller de-reference) og ikke refererer til noget objekt.
Demonstration af 'java.lang.NullPointerException'
I nedenstående illustration vil vi se, hvordan den omtalte undtagelse opstår:
Streng s = null;
customFunc ( s ) ;
statisk tomrum customFunc ( String str ) {
System.out.println ( str.længde ( ) ) ;
}
I ovenstående kodestykke:
-
- For det første skal du initialisere en streng med et ' nul 'værdi.
- I det næste trin skal du aktivere funktionen customFunc() ved at sende den erklærede streng som dens argument.
- Derefter skal du definere en funktion med navnet ' customFunc() ” ved at angive en streng, der skal sendes som dens parameter.
- I funktionsdefinitionen skal du returnere længden af den beståede streng via ' længde ” ejendom.
- Denne kode vil fungere sådan, at ved at sende en ' nul ” værdi til funktionen, vil den diskuterede undtagelse blive kastet:
I ovenstående output kan det observeres, at ' NullPointerException ' kastes ved påkaldelse af ' nul ' som et funktionsargument.
Fremgangsmåde 1: Løs 'java.lang.NullPointerException' ved hjælp af 'try...catch'-udsagn
Det ' prøve '-sætning hjælper med at definere en kodeblok, der skal testes for fejl, mens den udføres, og ' fangst ”-erklæring træder i kraft i tilfælde af en stødt på begrænsning i prøveblokken. Mere specifikt, ' java.lang.NullPointerException ” kan imødekommes ved at anvende den ønskede operation i 'try'-blokken og placere den sandsynlige undtagelse i 'catch'-blokken.
Syntaks
prøve {Kodeblokken at prøve
}
fangst ( Undtagelse e ) {
Kodeblokken til at håndtere den konfronterede undtagelse i prøveblokken
}
Eksempel
Lad os gennemgå nedenstående eksempel:
Streng s = null;customFunc ( s ) ;
statisk tomrum customFunc ( String str ) {
prøve {
System.out.println ( 'Første karakter:' + str.indexOf ( 0 ) ) ;
}
fangst ( NullPointerException e ) {
System.out.println ( 'NullPointerException kastet!' ) ;
} }
I ovenstående kodelinjer:
-
- Husk de diskuterede tilgange til at initialisere en ' nul ” værdi og påkald den angivne funktion ved at sende null-værdien som dens argument.
- Definer nu på samme måde en funktion ved navn ' customFunc() ” med strengen, der skal sendes som parameter.
- Anvend derefter ' prøve '-sætning for at hente indekset for det angivne tegn i en streng via ' indeks af() ” metode.
- Bemærk, at ' prøve ”-sætning kan udføres, hvis strengen ikke er null. Da værdien er ' nul ', så der vil blive stødt på en undtagelse, som vil blive håndteret af ' fangst ' udmelding.
Produktion
I ovenstående output kan det ses, at den angivne undtagelse er taget hensyn til ' fangst ” erklæring og så er det smidt, og derved løser det.
Fremgangsmåde 2: Løs 'java.lang.NullPointerException' ved hjælp af 'if/else'-sætning
Den omtalte undtagelse kan også sorteres fra via ' hvis ellers ' udmelding. Dette kan gøres ved blot at udføre den ønskede handling i ' hvis '-erklæring og ved den utilfredsstillede betingelse returneres en undtagelse via ' andet ' udmelding.
Syntaks
hvis ( kond ) {Erklæringen, der skal udføres på den opfyldte betingelse, dvs.
}
andet {
Erklæringen, der skal udføres på den utilfredse 'hvis' tilstand.
}
Eksempel
Gennemgå følgende eksempel for at få en forståelse af at håndtere undtagelsen:
Streng s = null;customFunc ( s ) ;
statisk tomrum customFunc ( String str ) {
hvis ( str ! = null ) {
System.out.println ( 'Første karakter:' + str.indexOf ( 0 ) ) ;
}
andet {
System.out.println ( 'NullPointerException kastet!' ) ;
}
}
Anvend de nedenfor diskuterede trin som angivet i ovenstående kode:
-
- Gentag de diskuterede trin for at initialisere en nulværdi og aktivere funktionen ved at sende ' nul ”værdi som sit argument.
- Dernæst skal du på samme måde erklære funktionen ' customFunc() ” med den angivne parameter.
- Anvend nu ' hvis ellers ' erklæring således, at på den opfyldte betingelse i ' hvis ”-sætning, udføres den tilsvarende blok.
- I det andet tilfælde er ' andet ” blok træder i kraft og kaster den diskuterede undtagelse.
- Bemærk, at betingelsen i ' hvis ” udsagn er identisk med den tidligere tilgang, hvorved den forfalskes.
Produktion
Sådan kan du håndtere ' java.lang.NullPointerException ”.
Konklusion
Det ' java.lang.NullPointerException ” returneres, når en referencevariabel fremkaldes eller fravælges og ikke refererer til noget objekt. Denne undtagelse kan håndteres ved at placere den i ' prøv...fang ' erklæring således, at ved udførelse af ' prøve ”-blok, kan den nævnte undtagelse imødekommes af sidstnævnte blok. Også ' hvis ellers '-sætning kan bruges til at løse denne undtagelse ved at placere den i ' andet '-erklæring, hvis ' hvis ”-erklæringen kan ikke udføres. Denne blog diskuterede tilgange til at håndtere ' java.lang.NullPointerException ”.