Hallo Leute!
Wir beschäftigen uns grade in der Uni gerade mit Klassen und Objekten und
bei der Abgabe meiner Hausaufgabe erhalte ich stets eine NullPointerException...
Die betroffenen Stellen sind folgende:
Die Klasse wird also mit einem Input gefüttert und den schmeiß ich dann in die
globale Variable, damit die anderen Methoden auch darauf zugreifen können.
Das Testprogramm auf dem Uni-Server liefert mir jedoch diese Fehlermeldung:
Logischerweise kann er mir ja nicht die Länge des Arrays zurückgeben, wenn
gradesGlobal als globale Variable nicht initialisiert wurde aber wie schreibe Ich
das jetzt so um, dass das ganze wieder funktioniert?
Ich denke mal, dass ich die Konstruktoren anders verwenden muss, ist aber nur
eine Idee...
Wenn mir jemand einen Hinweis geben könnte, wäre ich sehr dankbar!
Lg, Reb00t
Wir beschäftigen uns grade in der Uni gerade mit Klassen und Objekten und
bei der Abgabe meiner Hausaufgabe erhalte ich stets eine NullPointerException...
Die betroffenen Stellen sind folgende:
Java:
public class Histo(){
//global variables
int[] gradesGlobal;
// default constructor
public Histo(){
}
// constructor: initializes the Histo object with an array of grades
public Histo(int[] grades){
gradesGlobal = grades;
}
// add one grade from 1-5
public void enter (int grade){
int[] newGrades = new int[this.gradesGlobal.length + 1];
for(int i = 0; i < gradesGlobal.length; i++){
newGrades[i] = this.gradesGlobal[i];
}
this.gradesGlobal = newGrades;
this.gradesGlobal[this.gradesGlobal.length - 1] = grade;
}
//...
}
Die Klasse wird also mit einem Input gefüttert und den schmeiß ich dann in die
globale Variable, damit die anderen Methoden auch darauf zugreifen können.
Das Testprogramm auf dem Uni-Server liefert mir jedoch diese Fehlermeldung:
Code:
java.lang.NullPointerException
at Histo.enter(Histo.java:19)
Logischerweise kann er mir ja nicht die Länge des Arrays zurückgeben, wenn
gradesGlobal als globale Variable nicht initialisiert wurde aber wie schreibe Ich
das jetzt so um, dass das ganze wieder funktioniert?
Ich denke mal, dass ich die Konstruktoren anders verwenden muss, ist aber nur
eine Idee...
Wenn mir jemand einen Hinweis geben könnte, wäre ich sehr dankbar!
Lg, Reb00t