Een Null Pointer Exception , of java.lang.NullPointerException , treedt op wanneer een toepassing probeert toegang te krijgen tot een reference type dat niet is geïnitialiseerd . Op Java , nonprimitive types zoals String of Integer bezit zijn van een pointer naar een waarde , niet de waarde zelf . Als u probeert om te verwijzen naar een referentie- type en het is niet geïnitialiseerd , wordt de aanwijzer niet wijst naar iets , en is daarom nietig . Dit gebeurt meestal wanneer een reference type wordt doorgegeven als een argument voor een methode . De eenvoudigste manier om de uitzondering te behandelen is om de methode wat te doen als het een null pointer ontvangt vertellen . Instructies creëren van een eenvoudige klasse te produceren de NullPointerException 1 Maak een nieuwe klasse in uw toepassing als volgt . Deze klasse is ontworpen om een null pointer uitzondering produceren public class NullPointTest { public static void main ( String [ ] args ) op { taak ( null ) ; . < br } public void taak (geheel getal x ) > { int y = 1 + x ; } } < br > Pagina 2 Voer de klas . De volgende zal afdrukken naar de console : Uitzondering in thread " main " java.lang.NullPointerException op NullPoint.task ( NullPoint.java : 10 ) op Twitter bij NullPoint . main ( NullPoint.java : 6 ) 3 Merk het probleem treedt op omdat je voorbij null en uw " taak " -methode verwacht een pointer naar een integer < br . > afdrukken een fout voor foutopsporing 4 Voeg de volgende code voor het begin van de "taak " -methode . Dit zal u toelaten om te debuggen door te laten zien waar de null-waarde wordt ontvangen . If ( x == null ) { System.out.println ( " task ( ) heeft ontvangen van een null waarde voor x " ) ; } 5 Controleer om te zien dat de code er als volgt uitziet : public class NullPointTest { public static void main ( String [ ] args ) { taak ( null ) ; } public void taak (geheel getal x ) { > if ( x == null ) { System.out.println ( " task ( ) is een null-waarde voor x ontvangen " ) ; } int y = 1 + x ; } } 6 Ren de klas . Het volgende moet drukken om het scherm in plaats van de uitzondering : " task ( ) is een null-waarde voor x ontvangen . " Omgaan met de Exception 7 Wijs een . standaardwaarde wanneer een null-waarde wordt doorgegeven door het toevoegen van de volgende aan het begin van de " task " -methode if ( x == null ) { x = 1 ; } 8 Controleer om te zien dat de code er als volgt uitziet : public class NullPointTest { public static void main ( String [ ] args ) { taak ( null ) ; } public void taak (geheel getal x ) { if ( x == null ) { < br > x = 1 ; } int y = 1 + x ; } } 9 Uitvoeren de klas . Je moet niet meer zien de NullPointerException omdat x wijst nu naar 1 .
|