Kā atrisināt problēmu java.lang.NullPointerException

Ka Atrisinat Problemu Java Lang Nullpointerexception



Programmēšanas valodās kļūdas ļauj mums atbilstoši izpildīt dažādas funkcijas, pamudinot izstrādātāju. Šādā gadījumā var būt gadījumi, kad izstrādātājs var saskarties ar “ java.lang.NullPointerException 'par konkrētu' null ” vērtību, strādājot ar lielapjoma datiem. Šis izņēmums ir jārisina, lai racionalizētu koda funkcijas.

Šajā emuārā tiks detalizēti aprakstītas pieejas, kā tikt galā ar “ java.lang.NullPointerException ”.







Kā atrisināt problēmu “java.lang.NullPointerException”?

' java.lang.NullPointerException ” tiek atgriezts, kad tiek izsaukts atsauces mainīgais (vai tiek noņemta atsauce), un tas neatsaucas uz nevienu objektu.



“java.lang.NullPointerException” demonstrācija

Tālāk sniegtajā ilustrācijā mēs redzēsim, kā notiek apspriestais izņēmums:



Virkne s = null;
customFunc ( s ) ;
statisks tukšums customFunc ( String str ) {
System.out.println ( str.garums ( ) ) ;
}


Iepriekš minētajā koda fragmentā:





    • Pirmkārt, inicializējiet virkni ar ' null ” vērtību.
    • Nākamajā darbībā izsauciet funkciju customFunc(), nododot deklarēto virkni kā argumentu.
    • Pēc tam definējiet funkciju ar nosaukumu ' customFunc() ”, norādot virkni, kas jānodod kā tās parametrs.
    • Funkcijas definīcijā atgrieziet nodotās virknes garumu, izmantojot ' garums ” īpašums.
    • Šis kods darbosies tā, ka, nododot “ null ” vērtību funkcijai, tiks izmests apspriestais izņēmums:


Iepriekš minētajā izlaidē var novērot, ka “ NullPointerException 'tiek izmests, izsaucot' null ” kā funkcijas argumentu.

1. pieeja: atrisiniet problēmu “java.lang.NullPointerException”, izmantojot paziņojumus “try…catch”

' mēģināt ” paziņojums palīdz definēt koda bloku, kura izpildes laikā ir jāpārbauda, ​​vai nav kļūdu, un “ noķert ” paziņojums stājas spēkā, ja mēģinājuma blokā tiek konstatēts ierobežojums. Konkrētāk, “ java.lang.NullPointerException ” var nodrošināt, piemērojot vēlamo darbību blokā “izmēģināt” un ievietojot iespējamo izņēmumu blokā “noķert”.



Sintakse

mēģināt {
Izmēģināmais koda bloks
}
noķert ( Izņēmums e ) {
Koda bloks, lai apstrādātu izņēmumu iekšā mēģinājuma bloks
}


Piemērs

Apskatīsim tālāk norādīto piemēru:

Virkne s = null;
customFunc ( s ) ;
statisks tukšums customFunc ( String str ) {
mēģināt {
System.out.println ( 'Pirmais varonis:' + str.indexOf ( 0 ) ) ;
}
noķert ( NullPointerException e ) {
System.out.println ( 'NullPointerException izmests!' ) ;
} }


Iepriekš minētajās koda rindās:

    • Atgādiniet apspriestās pieejas, lai inicializētu ' null ” vērtību un izsauc norādīto funkciju, kā argumentu nododot nulles vērtību.
    • Tagad tāpat definējiet funkciju ar nosaukumu ' customFunc() ”, kura parametrs ir nododamā virkne.
    • Pēc tam izmantojiet ' mēģināt ” paziņojums, lai iegūtu virknē norādītās rakstzīmes indeksu, izmantojot “ indexOf() ” metode.
    • Ņemiet vērā, ka “ mēģināt ” paziņojumu var izpildīt, ja virkne nav nulles. Tā kā vērtība ir “ null ”, tāpēc tiks konstatēts izņēmums, ko apstrādās noķert ' paziņojums, apgalvojums.

Izvade


Iepriekš minētajā izvadā var redzēt, ka norādīto izņēmumu nodrošina “ noķert ” paziņojums un tā tiek izmests, tādējādi to atrisinot.

2. pieeja: atrisiniet problēmu “java.lang.NullPointerException”, izmantojot paziņojumu “if/else”.

Apspriesto izņēmumu var arī sakārtot, izmantojot “ ja/citādi ' paziņojums, apgalvojums. To var izdarīt, vienkārši veicot vajadzīgo darbību sadaļā “ ja ” paziņojums un neapmierinātā stāvokļa gadījumā tiek atgriezts izņēmums, izmantojot “ cits ' paziņojums, apgalvojums.

Sintakse

ja ( kond ) {
Paziņojums, kas jāizpilda, ja nosacījums ir izpildīts, t.i., “kond.
}
cits {
Paziņojums, kas jāizpilda neapmierinātajam 'ja' stāvokli.
}


Piemērs

Izlasiet šo piemēru, lai saprastu, kā tikt galā ar izņēmumu:

Virkne s = null;
customFunc ( s ) ;
statisks tukšums customFunc ( String str ) {
ja ( str ! = null ) {
System.out.println ( 'Pirmais varonis:' + str.indexOf ( 0 ) ) ;
}
cits {
System.out.println ( 'NullPointerException izmests!' ) ;
}
}


Veiciet tālāk apspriestās darbības, kā norādīts iepriekš minētajā kodā:

    • Atkārtojiet apspriestās darbības, lai inicializētu nulles vērtību un izsauktu funkciju, nododot “ null ” vērtību kā argumentu.
    • Pēc tam līdzīgi deklarējiet funkciju ' customFunc() ” ar norādīto parametru.
    • Tagad izmantojiet “ ja/citādi ” paziņojums tā, ka, ja ir izpildīts nosacījums “ ja ” paziņojums, tiek izpildīts atbilstošais bloks.
    • Citā gadījumā “ cits ” bloks stāsies spēkā un izmetīs apspriesto izņēmumu.
    • Ņemiet vērā, ka nosacījums sadaļā “ ja ” apgalvojums ir identisks iepriekšējai pieejai, tādējādi to falsificējot.

Izvade


Tādā veidā jūs varat tikt galā ar ' java.lang.NullPointerException ”.

Secinājums

' java.lang.NullPointerException ” tiek atgriezts, kad atsauces mainīgais tiek izsaukts vai noņemts, un tas neatsaucas uz nevienu objektu. Šo izņēmumu var apstrādāt, ievietojot to sadaļā “ mēģināt… noķert ' paziņojums tā, ka, izpildot ' mēģināt ” bloku, izņēmumu var nodrošināt pēdējais bloks. Arī ' ja/citādi ' paziņojumu var izmantot, lai atrisinātu šo izņēmumu, ievietojot to sadaļā ' cits ' paziņojums, ja ' ja ” paziņojumu neizdodas izpildīt. Šajā emuārā tika apspriestas pieejas, kā tikt galā ar “ java.lang.NullPointerException ”.