ഒരു ജാവ ആപ്ലിക്കേഷൻ ഒബ്ജക്റ്റിന് പകരം നൾ ഉപയോഗിക്കാൻ ശ്രമിക്കുമ്പോൾ സംഭവിക്കുന്ന ഒരു ജാവ പിശകാണ് java.lang.nullpointerexception.
RuntimeException വിപുലീകരിച്ചിരിക്കുന്നത് ഒരു പൊതു ക്ലാസായ NullPointerException ആണ്.
നിങ്ങൾ ഒരു നൾ ഒബ്ജക്റ്റിന്റെ ഇൻസ്റ്റൻസ് മെത്തേഡ് എന്ന് വിളിക്കുന്നത് പോലെയുള്ള വിവിധ സാഹചര്യങ്ങളിൽ NullPointerException ഉയർത്തുന്നു. ഒരു ഒബ്ജക്റ്റ് ശൂന്യമാണെങ്കിൽ, നിങ്ങൾ ആ നൾ ഒബ്ജക്റ്റിന്റെ ഒരു ഫീൽഡ് ആക്സസ് ചെയ്യാനോ എഡിറ്റ് ചെയ്യാനോ ശ്രമിക്കുകയാണെങ്കിൽ ഈ പിശകും സംഭവിക്കും.
നിങ്ങൾ ഒരു നൾ അറേയുടെ ദൈർഘ്യം നേടാൻ ശ്രമിക്കുകയാണെങ്കിൽ, ഒരു അപവാദവും ഉയർത്തപ്പെടും.
ഈ ലേഖനത്തിൽ, ജാവയിൽ ഒരു നൾ പോയിന്റർ ഒഴിവാക്കൽ എങ്ങനെ കൈകാര്യം ചെയ്യാമെന്ന് നോക്കാം.
java.lang.nullpointerexception സംഭവിക്കുമ്പോൾ?
ഒരു വസ്തുവിലേക്കും വിരൽ ചൂണ്ടാത്ത ഒരു ജാവ വേരിയബിൾ ഏതെങ്കിലും പ്രവർത്തനത്തിനായി ആക്സസ് ചെയ്യുമ്പോൾ, java.lang.nullpointerexception ഉദിക്കുന്നു.
റൺടൈം ഒഴിവാക്കൽ java.lang.nullpointerexception റൺടൈമിന്റെ ഒരു അപവാദമാണ് java.lang.nullpointerexception. നിങ്ങൾ ഒരു വേരിയബിൾ നിർവചിക്കുമ്പോൾ, അത് ഉപയോഗിക്കാൻ ശ്രമിക്കുന്നതുവരെ ഒരു ഒബ്ജക്റ്റിന് അത് നൽകരുത്, നിങ്ങൾക്ക് ഒരു java nullpointerexception ലഭിക്കും.
നിലവിലില്ലാത്ത ഒരു സ്ഥാപനത്തെയാണ് നിങ്ങൾ പരാമർശിക്കുന്നത്. ജാവയിൽ, null എന്നത് ഒരു പ്രത്യേക മൂല്യത്തെ സൂചിപ്പിക്കുന്നു. ഒരു റഫറൻസ് വേരിയബിളിന് ഒരു മൂല്യം അനുവദിച്ചിട്ടില്ല അല്ലെങ്കിൽ ഒരു മൂല്യവും നൽകിയിട്ടില്ലെന്ന് സൂചിപ്പിക്കാൻ ഇത് സാധാരണയായി ഉപയോഗിക്കുന്നു.
ഒരു NullPointerException ഒഴിവാക്കാൻ, വേരിയബിൾ ഉപയോഗിക്കുന്നതിന് മുമ്പ് എല്ലാ ഒബ്ജക്റ്റുകളും ശരിയായി ആരംഭിച്ചിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക.
ഇനിപ്പറയുന്നവയാണ് ഏറ്റവും സാധാരണമായ ചില NullPointerException സാഹചര്യങ്ങൾ:
- ഒരു നൾ ഒബ്ജക്റ്റിന്റെ ഗുണങ്ങൾ നേടുന്നു
- രീതികൾ വിളിക്കാൻ ഒരു നൾ ഒബ്ജക്റ്റ് ഉപയോഗിക്കുന്നു
- ശൂന്യമായ ഒബ്ജക്റ്റിൽ, സമന്വയിപ്പിച്ചത് ഉപയോഗിക്കുന്നു
- ഒരു അപവാദ-ത്രോയിംഗ് രീതിയിൽ നിന്ന് null എറിയുന്നു
- നൾ ആർഗ്യുമെന്റുകൾ ഒരു രീതിയിലേക്ക് കൈമാറുന്നു.
- ഒരു നൾ ഒബ്ജക്റ്റിന്റെ സൂചിക ഘടകം ആക്സസ് ചെയ്യുന്നു (ഒരു അറേയിലെന്നപോലെ)
- സ്പ്രിംഗ് പോലെയുള്ള ഡിപൻഡൻസി ഇഞ്ചക്ഷൻ ചട്ടക്കൂടുകൾക്ക്, ഈ ക്രമീകരണം തെറ്റാണ്.
java.lang.nullpointerexception ന്റെ ഉദാഹരണം
ഒരു ഒബ്ജക്റ്റിനെ പരാമർശിക്കാത്ത ഒരു ജാവ വേരിയബിൾ സൃഷ്ടിച്ചാൽ NullPointerException എറിയപ്പെടും, ചില പ്രവർത്തനങ്ങൾ നടപ്പിലാക്കാൻ ഉപയോഗിക്കുന്നു.
ഇനിപ്പറയുന്ന ഉദാഹരണം അസാധുവാക്കാൻ സജ്ജീകരിച്ചിരിക്കുന്ന സ്ട്രിംഗിന്റെ നീളം നിർണ്ണയിക്കാൻ ശ്രമിക്കുന്നു.
java.lang.nullpointerexception പരിഹരിക്കുന്നു
പരിഹരിക്കുക 1
java.lang ഒഴിവാക്കൽ എറിയുന്ന ജാവ വേരിയബിൾ കണ്ടെത്തുക. സോഫ്റ്റ്വെയർ ഒരു NullPointerException എറിയുകയാണെങ്കിൽ, വേരിയബിൾ ഒരു മൂല്യത്തിനോ ഒബ്ജക്റ്റിനോ അനുവദിച്ചിട്ടുണ്ടോ എന്ന് രണ്ടുതവണ പരിശോധിക്കുക.
java വേരിയബിളിന് ഒരു മൂല്യം നൽകിയാൽ java.lang.nullpointerexception നിരസിക്കപ്പെടും.
പരിഹരിക്കുക 2
ഒരു java.lang.nullpointere ആണെങ്കിൽ പ്രവർത്തനം നടത്തുന്നതിന് java വേരിയബിൾ ഉപയോഗിക്കുന്നതിന് മുമ്പ് സ്ഥിരസ്ഥിതി മൂല്യം വ്യക്തമാക്കാൻ ടേണറി ഓപ്പറേറ്റർ ഉപയോഗിക്കുക.xception വേരിയബിളിലേക്ക് എറിയപ്പെടുന്നു.
വേരിയബിളിന് ഒന്ന് ഉണ്ടെങ്കിൽ അതിന്റെ മൂല്യം ഉപയോഗിക്കും. അല്ലെങ്കിൽ, ഒരു java.lang.nullpointerexception ഒഴിവാക്കാൻ, ഡിഫോൾട്ട് മൂല്യം ഉപയോഗിക്കും.
പരിഹരിക്കുക 3
ഏത് വേരിയബിളാണ് java.lang.nullpointerexception-ന് കാരണമാകുന്നതെന്ന് നിങ്ങൾക്ക് ഉറപ്പില്ലെങ്കിൽ അല്ലെങ്കിൽ java.lang.nullpointerexception എറിയാനുള്ള സാധ്യത ഉണ്ടെങ്കിലോ java.lang.nullpointerexception എറിയാനുള്ള സാധ്യത ഉണ്ടെങ്കിലോ, അല്ലെങ്കിൽ java.lang.nullpointerexception എറിയാനുള്ള സാധ്യത ഉണ്ടെങ്കിലോ; കോഡിലേക്ക് ഒരു നൾ ചെക്ക് ചേർക്കുന്നത് സമയമെടുക്കുന്നതാണ്.
പ്രശ്നം കൈകാര്യം ചെയ്യാൻ അതിൽ ഒരു ക്യാച്ച് ബ്ലോക്ക് ചേർക്കുക.
പരിഹരിക്കുക 4
ആപ്ലിക്കേഷനിലെ ജാവ വേരിയബിൾ ഒരു java.lang.nullpointerexception എറിയുകയാണെങ്കിൽ, അത് ഉപയോഗിക്കുന്നതിന് മുമ്പ് ഒരു നൾ ചെക്ക് ചെയ്യുക.
വേരിയബിൾ ശൂന്യമാണെങ്കിൽ ഇതര റൂട്ട് സ്വീകരിക്കുക. java.nullpointerexception നീക്കം ചെയ്യപ്പെടും.
തീരുമാനം
ഈ ലേഖനത്തിൽ, ഞങ്ങൾ Java NullPointerException നോക്കി.
ഇത് അപകടകരമായ ഒരു അപവാദമാണ്, അത് നമ്മൾ പ്രതീക്ഷിക്കാത്ത സമയങ്ങളിൽ പലപ്പോഴും ദൃശ്യമാകും. ഒരു നൾ പോയിന്റർ ഒഴിവാക്കലിന്റെ ഏറ്റവും സാധാരണമായ കാരണം ഒരു നൾ ഒബ്ജക്റ്റ് അല്ലെങ്കിൽ നൾ റഫറൻസ് ആണ്.
ഏറ്റവും ഫലപ്രദമായ പരിഹാരങ്ങൾ ഞങ്ങൾ ഇതിനകം കണ്ടു.
നിങ്ങളുടെ അഭിപ്രായങ്ങൾ രേഖപ്പെടുത്തുക