Ich habe in der uni so eine Aufgabe bekommen, in der man eine Klasse programmieren soll, mit der man dann das vorgegebene Codestueck fehlerfrei uebersetzen und ausfuehren kann.
Genauer gesagt gibt es eine fest vorgegebene Hauptklasse (Decoration.java, mit main-Methode und mehreren Methodenaufrufen. Und dazu soll man dann halt eine passende Klasse programmieren, mit passenden Methoden (LittleTree.java).
Ja, mein Problem ist jetzt, dass in der vorgegebenen Klasse, in mehreren Methodenaufrufen, Stringkonstanten, enthalten sind:
... also den String deco als Parameter deklariere, kommt sowas:
Exception in Thread "main" java.lang.NullpointerException
at LittleTree.addDeco(LittleTree.java:22)
at Decoration.main(Decoration.java:6)
Vielleicht muesste ich den String noch als Objekt erzeugen, oder so (aber wie mache ich das, ohne alle Konstanten in LittleTree.java reinschreiben zu muessen). Die Konstanten sollen ja an die Methode addDeco geschickt werden. Und veraendern, darf ich Decoration.java, wie gesagt, nicht.
Danke.
Gruss nnif
Genauer gesagt gibt es eine fest vorgegebene Hauptklasse (Decoration.java, mit main-Methode und mehreren Methodenaufrufen. Und dazu soll man dann halt eine passende Klasse programmieren, mit passenden Methoden (LittleTree.java).
Ja, mein Problem ist jetzt, dass in der vorgegebenen Klasse, in mehreren Methodenaufrufen, Stringkonstanten, enthalten sind:
Java:
class Decoration {
public static void main(String[] args) {
LittleTree susisTree = new LittleTree();
susisTree.setBoughs(7); // Anzahl Zweige zum Anhaengen von Schmuck
susisTree.addDeco("rote Kugel");
susisTree.addDeco("silberne Kugel");
susisTree.addDeco("Kerze");
susisTree.addDeco("Kerze");
susisTree.addDeco("Kerze");
susisTree.addDeco("Schoko-Weihnachtsmann");
susisTree.addDeco("goldener Tannenzapfen");
susisTree.addDeco("Stern");
Out.println("\nSusis Baum fuer Aufgabe a):");
susisTree.showTree();
Und wenn ich die Methode addDeco so schreibe (nur die Woerter String und deco sind wichtig):
void addDeco(String deco) {
if (boughsAreSet == false || decoratedBoughs >= boughs) {
Out.println("Anhaengen " + deco + " ist leider nicht moeglich.");
} else { // boughsAreSet && decoratedBoughs < boughs
for(int j = 0, i = 0; j < deco.length(); j++) {
a[i][j] = deco.charAt(j);
}
decoratedBoughs++;
}
}
Exception in Thread "main" java.lang.NullpointerException
at LittleTree.addDeco(LittleTree.java:22)
at Decoration.main(Decoration.java:6)
Vielleicht muesste ich den String noch als Objekt erzeugen, oder so (aber wie mache ich das, ohne alle Konstanten in LittleTree.java reinschreiben zu muessen). Die Konstanten sollen ja an die Methode addDeco geschickt werden. Und veraendern, darf ich Decoration.java, wie gesagt, nicht.
Danke.
Gruss nnif
Zuletzt bearbeitet von einem Moderator: