Java.lang.nullpointerexception ir Java kļūda, kas rodas, ja Java lietojumprogramma mēģina objekta vietā izmantot nulli.
RuntimeException ir paplašināts ar NullPointerException, kas ir publiska klase.
NullPointerException tiek parādīts dažādās situācijās, piemēram, kad izsaucat nulles objekta instances metodi. Šī kļūda radīsies arī tad, ja objekts ir nulle un jūs mēģināt piekļūt vai rediģēt šī nulles objekta lauku.
Ja mēģināsit iegūt nulles masīva garumu, tiks parādīts arī izņēmums.
Šajā rakstā mēs apskatīsim, kā rīkoties ar nulles rādītāja izņēmumu Java.
Kad notiek java.lang.nullpointerizņēmums?
Ja jebkurai darbībai tiek piekļūts java mainīgajam, kas nenorāda uz nevienu objektu, rodas java.lang.nullpointerizņēmums.
Izpildlaika izņēmums java.lang.nullpointerexception Izņēmums no izpildlaika ir java.lang.nullpointerexception. Ja definējat mainīgo, bet nepiešķirat to objektam, kamēr nemēģināsit to izmantot, jūs saņemsiet java nullpointer izņēmumu.
Jūs runājat uz neesošu entītiju. Java valodā null apzīmē noteiktu vērtību. To visbiežāk izmanto, lai norādītu, ka atsauces mainīgajam nav piešķirta vērtība vai tam nav piešķirta vērtība.
Lai izvairītos no NullPointerException, pirms mainīgā izmantošanas pārliecinieties, vai visi objekti ir pareizi inicializēti.
Tālāk ir minēti daži no visbiežāk sastopamajiem NullPointerException scenārijiem.
- Nulles objekta īpašību iegūšana
- Nulles objekta izmantošana metožu izsaukšanai
- Uz nulles objekta, izmantojot sinhronizēto
- Nulles metiens no izņēmuma metiena metodes
- Nulles argumenti tiek nodoti metodei.
- Piekļuve nulles objekta indeksa elementam (kā masīvā)
- Atkarības ievadīšanas sistēmām, piemēram, Spring, šis iestatījums ir nepareizs.
Java.lang.nullpointerizņēmuma piemērs
NullPointerException tiks izmests, ja tiek izveidots Java mainīgais, kas neatsaucas uz objektu un tiek izmantots, lai izpildītu kādu darbību.
Nākamajā piemērā ir mēģināts noteikt virknes garumu, kas ir iestatīts uz nulli.
Java.lang.nullpointerexception labošana
Fix 1
Atrodiet java mainīgo, kas rada java.lang izņēmumu. Ja programmatūra rada NullPointerException, vēlreiz pārbaudiet, vai mainīgais ir piešķirts vērtībai vai objektam.
Java.lang.nullpointerexception tiks noraidīts, ja java mainīgajam tiks piešķirta vērtība.
Fix 2
Izmantojiet trīskāršo operatoru, lai norādītu noklusējuma vērtību, pirms izmantojat java mainīgo, lai veiktu darbību, ja java.lang.nullpointerexception tiek iemests mainīgajā.
Mainīgā vērtība tiks izmantota, ja tāda ir. Pretējā gadījumā, lai izvairītos no java.lang.nullpointerizņēmuma, tiks izmantota noklusējuma vērtība.
Fix 3
Ja neesat pārliecināts, kurš mainīgais izraisa java.lang.nullpointerexception vai ja pastāv iespēja mest java.lang.nullpointerexception, vai ja pastāv java.lang.nullpointerexception izmešanas risks vairākās vietās; ir laikietilpīgi, lai kodam pievienotu nulles pārbaudi.
Lai atrisinātu problēmu, pievienojiet tai noķeršanas bloku.
Fix 4
Ja java mainīgais lietojumprogrammā rada java.lang.nullpointerexception, pirms tā izmantošanas veiciet nulles pārbaudi.
Izvēlieties citu ceļu, ja mainīgais ir nulle. Izņēmums java.nullpointer tiks noņemts.
Secinājumi
Šajā rakstā mēs apskatījām Java NullPointerException.
Šis ir bīstams izņēmums, kas bieži parādās, kad mēs to vismazāk sagaidām. Visizplatītākais nulles rādītāja izņēmuma iemesls ir nulles objekts vai nulles atsauce.
Mēs jau esam redzējuši visefektīvākos risinājumus.
Atstāj atbildi