NullPointerException Problem

markoni
Neuling
Neuling
Beiträge: 1
Registriert: 17. Jun 2012 16:06

NullPointerException Problem

Beitrag von markoni »

Hallo,

Ich habe einige Probleme mit der Kompilierbarkeit des Projekts. Es sind bei mir alle Klassen problemlos kompilierbar, doch wenn ich das Spiel MauMau starte kommen einige NullPointerException Meldungen und das Spiel ist nicht spielbar. Meine Frage wäre ob man dennoch dafür Punkte bekommt wenn sonst die Klassen für sich funktionieren und woran könnte es liegen??

Benutzeravatar
mmi1991
Computerversteher
Computerversteher
Beiträge: 349
Registriert: 20. Okt 2011 18:46
Wohnort: Hattersheim

Re: NullPointerException Problem

Beitrag von mmi1991 »

NullPointerException treten auf, wenn du versuchst, eine Funktion aufzurufen oder auf eine öffentliche Variable zuzugreifen, wenn das Objekt dazu == null ist.
Bspw.

System.out.println(Spieler.getAnzahlKarten());
-> Nullpointerexception, falls Spieler == null
Der müsste dir eigentlich auch ausspucken, in welcher Zeile das Problem auftritt. Dann solltest zu zurückverfolgen, warum an dieser Stelle deine Variable den Wert null hat.

Siehe auch: http://docs.oracle.com/javase/1.5.0/doc ... ption.html
Ophasentutor SoSe 2014, WiSe 2015/16
Alle Angaben wie immer ohne Gewähr

snoo
Erstie
Erstie
Beiträge: 18
Registriert: 18. Jun 2012 20:58

Re: NullPointerException Problem

Beitrag von snoo »

markoni hat geschrieben:Hallo,

Ich habe einige Probleme mit der Kompilierbarkeit des Projekts. Es sind bei mir alle Klassen problemlos kompilierbar, doch wenn ich das Spiel MauMau starte kommen einige NullPointerException Meldungen und das Spiel ist nicht spielbar. Meine Frage wäre ob man dennoch dafür Punkte bekommt wenn sonst die Klassen für sich funktionieren und woran könnte es liegen??
Ich denke die Vergabe der Punkte wird in etwa so verlaufen wie in AI1. Es werden (automatisierte) Tests vollzogen, die einzelne Klassen/Methoden prüfen, indem sie schauen, ob die Rückgabewerte je nach Situation korrekt sind. Ob die wirklich alles abdecken weiß ich nicht, aber ich denke solch Dinge wie dein NullPointerException (Runtime-Error) werden recht schnell auffliegen, da du irgendwo etwas nicht genau nach Aufgabenstellung programmiert hast.

Ich selber hatte auch einen NullPointerException Fehler. Die IDE hat mir die Stelle im Programm-Code gezeigt und es handelte sich dabei um eine vorprogrammierte Methode. Wenn man sich etwas mit dem vorprogrammierten Teiles des Programms auseinandersetzt und man es versteht müsste man eigentlich recht schnell auf die Fehlerquelle stoßen. Denn der Fehler muss in einer deiner programmierten Klassen liegen.

Johnny
Mausschubser
Mausschubser
Beiträge: 50
Registriert: 24. Nov 2011 19:28

Re: NullPointerException Problem

Beitrag von Johnny »

Bei mir kommt etwas sehr ähnliches vor, nur das ich eine IllegalArgumentException bekomme. Die Fehlermeldungen erscheinen an zufälligen Orten im Vorgabeteile und an der Methode zug des Computerspielers. Kann mir jemand sagen, wieso ich das bekomme?
It is only when we lose everything that we are free to do anything

Benutzeravatar
Owyn
BSc Spammer
BSc Spammer
Beiträge: 1012
Registriert: 5. Sep 2005 21:53
Wohnort: Rheingau

Re: NullPointerException Problem

Beitrag von Owyn »

Wie der Name der Exception schon sagt, übergeben Sie einer Methode einen unpassenden Parameter.
Da die Fehlermeldung auch die Zeile nennt, in der das passiert, können und müssen Sie den Fehler selbst finden.

Gruß,
Christian Heinig
All those who believe in psycho-kinesis, raise my hand.
(Steven Wright)

LizVik
Neuling
Neuling
Beiträge: 9
Registriert: 16. Jun 2012 21:09
Wohnort: Darmstadt

Re: NullPointerException Problem

Beitrag von LizVik »

Johnny hat geschrieben:Bei mir kommt etwas sehr ähnliches vor, nur das ich eine IllegalArgumentException bekomme. Die Fehlermeldungen erscheinen an zufälligen Orten im Vorgabeteile und an der Methode zug des Computerspielers. Kann mir jemand sagen, wieso ich das bekomme?
Möglicherweise handelt es sich um das gleiche Problem wie hier:
/viewtopic.php?f=174&t=25884

Wenn ja, dann kann man diesen Fall ruhig ignorieren.
int i = 5; i = ++i + ++i; return i;

Antworten

Zurück zu „Archiv“