PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Seltsames Verhalten beim Zurückliefern eines Wert beim Methodenaufruf


Lord Nikon
2004-09-19, 14:33:25
Hi,
hier erstmal ein bisschen Code:

public ExtremeInt add(ExtremeInt rhs)
{
ExtremeInt erg=new ExtremeInt();
/* Zeilen die eine binäre Addidation bei einem eigenen Datentyp ermöglich gekürtzt */
return erg;
}

public void convert_to_dez()
{ double erg=0.0;
try
{

System.out.println("Digits:"+ Integer.toString(this.digits));
for(int i=0;i<this.digits;i++)
{
// System.out.println("I:" + Integer.toString(i)) ;
// System.out.println("List:" + Double.toString(list[i]));
if(this.puffer[i]!=0)
{
// System.out.println("Bin nicht 0 und addiere was");
erg+=this.list[i];
// System.out.println("Erg"+ Double.toString(erg));
}
}
System.out.println(Double.toString(erg));
}
catch(Exception e)
{
System.out.println("Fehler:" + e.toString());

}
}


Aufgerufen habe ich das folgender Massen:
[CODE]
ExtremeInt Zahl=new ExtremeInt();
Zahl.setvalue(1.0);
Zahl=Zahl.add(ei);
System.out.println("Ergebniss wird zurückgeliefert");
Zahl.convert_to_dez();

Die zweite Methode klappt eigentlich perfekt bis auf den Fall, wenn ich die add Methode vorher aufgerufen habe. Es kommt als Fehlermeldungjava.lang.NullPointerException
Woran liegt das? Das Objekt wird ja ordnungsgemäß angelegt.

Gast
2004-09-19, 15:48:18
Versuche bei der Ausgabe der Fehlermeldung mal den Stacktrace von der Exception auszugeben um die Stelle des Problems genauer zu lokalisieren. (mit e.printStackTrace())

Lord Nikon
2004-09-19, 17:22:24
Ausgabe:java.lang.NullPointerException
at ExtremeInt.convert_to_dez(Start.java:194)
also liegt der Fehler in dieser Zeile:

erg+=this.list[i];

HellHorse
2004-09-20, 11:10:35
Da kann eigentlich nur this.list null sein.