Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Exception

Empfohlene Antworten

Veröffentlicht

was ist denn das für eine Exception? java.lang.NullPointerException

lg raz

Hallo,

das bedeutet, das dein Object oder deine Variable nichts enthält, also null.

Wenn du nun was mit dem Object machen willst, sagt die JVM dir mit dieser Exception, dass die Methode auf ein leeres Object nicht angewendet werden kann.

Gruß Jaraz

Die Java Documentation sagt zu java.lang.NullPointerException folgendes: "Thrown when an application attempts to use null in a case where an object is required."

Das bedeutet zum Beispiel, daß Du auf ein Objekt zugreifen willst, für das Du noch keinen Konstruktor aufgerufen hast., also noch keinen Speicher reserviert hast.

Jan

Der gaiusjUlius hat das Problem hier beim Stichwort Java kurz aufgezeigt.

Auszug:

MyClass myObjekt=null; // Objektreferenz, initialisiert mit Nullreferenz

myObjekt = new MyClass(); // Instantiierung und Allokation von Speicher

Referenzen müssen laut Definition initialisiert sein, bei Java geht das wohl auch wenn es NULL ist, wobei aber eigentlich eine NULL-Initialisierung jedenfalls bei C++ nicht erlaubt ist, sondern nur bei Zeigern. Von dem her halte ich das bei Java für etwas böses und eine große Fehlerquelle, weil uninitialisierte Objekte im Programm unverhersehbare Folgen haben können. Das ist auch ein Grund, warum man die Zeiger bei Java wohlwissentlich aus dem Sprachschatz gestrichen hat - allerdings mit den Null-Referenzen ist das Problem doch wieder durch die Hintertür eingeführt (meiner Meinung nach). Um wirklich sicher zu gehen müßte man in jedem Programm diese Exception abfangen. Der Name "java.lang.NullPointerException" weist aber darauf hin, daß es sich um einen Zeiger handelt und nicht um eine Referenz. Eine 0-Referenz ist also in Java ein Zeiger, wobei hierdurch klar wird, daß eine Referenz in Java auch als Zeiger mit versteckter Dereferenzierung gelöst ist (wie in C++, was ja das Streitthema im obigen Thread war). Ergebnis ist, daß wohl immer ein Unterschied zwischen einer Definition und deren Realisierung in echtem Programmcode besteht, was aber jetzt vom eigentlichen Thema abweicht.

@ Crush: warum einfach wenn es auch schwer geht ;o)

aber mit deiner Erklärung hast du schon recht. Java hat nun mal für den Programmierer keine sichtbaren Zeiger, aber auf Objekte lässt sich nicht anders zugreifen, deshalb arbeitet Jave intern trotzdem mit Zeigern.

Es kann aber schon ganz schöne Tücken haben, das es in Java keine Zeiger gibt. So scheint es zumindest, wenn man von C++ kommt.

@raz:

prüfe dein Ojekt bevor du auf eine seiner Funktionen/Methoden zugreifst auf null.

Bsp:

if (ojekt != null){

objekt.funktion();

}

oder fange die Exception ab:

try{

objekt.funktion();

}

catch (java.lang.NullPointerException e){

System.out.println("Fehler in Funktion ... : " + e.getMessage());

}

Chipsy

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.