Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Objekt weitergeben Meth Class NullPointerException
Situation: Ich habe eine MainGui und die gebe ich weiter
Gui wird an Klasse A per Konstruktor gegeben
Klasse A speichert mit this.
Klasse A erzeugt in der Class ein Object von Klasse B
Klasse A gibt Object der Gui welche mit this gespeichert wurde, weiter an Klasse B (Konstruktor).
Klasse B will das Object mainGui aufrufen (Eclipse) und kann ohne fehler den Jlabel Text (setText
Klasse B speichert auch mit this. das Object
auswählen.
Programm wird ausgeführt
Problem: Fehler: Exception in thread "Thread-3" java.lang.NullPointerException
Fehler wird aufgerufen beim ändern des Jlabel Text
Wenn ich Klasse B in der Methode von Klasse A erzeuge funktionierts.
Es macht keinen Unterschied ob ich das am anfang oder wo auch immer der Methode das mache ,aber mache ich es in der Klasse gibt es den Fehler.
Frage:
Was könnte ein Grund sein, dass es nicht funktioniert, wenn ich es in der Klasse aufrufe
Ich sehe richtig, dass ich ein Object weitergebe, welches immer auf den gleichen Ort weist?
Was bedeutet "speichert mit this"?
Bei 5. meinst du das Objekt der Klasse B kann ohne Fehler den Text vom JLabel ändern.
Redest du hier von einem Compile Fehler oder Laufzeitfehler?
Ich finde es zwar Vorbildlich wie du versuchst dein Problem darzustellen, aber du kannst ruhig auch Code bereitstellen, welcher zu deiner Erklärung gehört. Dann kann man das einfacher nachvollziehen.
Ohne Code kann man dir nur sagen was die Fehlermeldung bedeutet aber nicht genau warum diese passiert! Also zeig uns etwas Code dann können wir dir besser helfen.
Ist doch ganz einfach, du greifst auf ein Objekt zu welches es nicht gibt.
Im StackTrace gibt es die entsprechende Angabe wo genau der Fehler passiert.
Hast du schon den Debugger verwendet um zu kontrollieren was passiert?
Wenn ich Klasse B in der Methode von Klasse A erzeuge funktionierts.
Es macht keinen Unterschied ob ich das am anfang oder wo auch immer der Methode das mache ,aber mache ich es in der Klasse gibt es den Fehler.
Frage:
Was könnte ein Grund sein, dass es nicht funktioniert, wenn ich es in der Klasse aufrufe
Ich sehe richtig, dass ich ein Object weitergebe, welches immer auf den gleichen Ort weist?
Ich gehe stark davon aus du erzeugst "unbeabsichtigt" ein 2.Objekt deiner GUI erstellst und diese an das Objekt der Klasse B weitergibst. Diese ist uninitialisiert und daher fliegt deine Exception!
Du gibst das Objekt bzw. die Referenz die auf das Objekt weist weiter!
poste bitte den code bis zum punkt an dem die exception fliegt sowie den vollständigen stack
auch wie Joose vermut ich das du irgendwo ein "new" stehen hast was keines sein sollte und du so an einer anderen stelle versuchst auf etwas zuzugreifen was gar nicht da ist