Zeichenprogramm mit ColorPoint

jsliderex

Mitglied
Hallo!

Nach Stundenlangem Fehlersuchen wende ich mich wieder mal an euch, da ich echt nicht weiterkomme.
Folgendes: Ich implementiere gerade ein einfaches Zeichenprogramm, welches von Punkt zu Punkt mit drawLine() zeichnet. Diese Punkte befinden sich in einer ArrayList.

Hat auch super funktioniert, ich habe Buttons und Schaltflächen hinzugefügt.

Jetzt zum Problem:
Laut Aufgabenstellung (Studium) soll ich das Programm nun so umstellen, dass es nur noch Objekte
der Klasse ColorPoint verwaltet (statt wie vorher Point). Ich hab bis jetzt die Klasse implementiert und die vorhandenen Klassen versucht anzupassen. Jetzt bekomme ich aber immer eine NullPointerException.

Anscheinend befinden sich keine ColorPoint Objekte in der ArrayList, ich kann mir aber echt nicht erklären wieso, da sie meiner Meinung nach erzeugt werden. ???:L

Wär nett wenn ihr mal einen Blick draufwerfen könntet, ich hab die 3 Klassen angehängt wegen Codelänge.

MFG
 

Anhänge

  • code.zip
    2,8 KB · Aufrufe: 7
S

SlaterB

Gast
immer die Fehlermeldung auch anschauen
Code:
Exception in thread "main" java.lang.NullPointerException
	at test.ColorPoint.<init>(Test.java:142)
	at test.DrawingArea.<init>(Test.java:65)
	at test.ScribbleApplication.<init>(Test.java:254)
	at test.Test.main(Test.java:37)
sagt dir doch glasklar, dass der Fehler in der ColorPoint-Klasse in Zeile sowieo stattfindet (bei mir sind alle Klassen in einer DateiTest.java)

was steht im ColorPoint-Konstruktor?
Java:
class ColorPoint
{
    private Point point;
    private Color color;

    public ColorPoint()
    {
        this.point.x = 0;  // Zeile mit Exception
        ...
was genau ist denn this.point zu diesem Zeitpunkt? genau, null

also noch ein Pont-Objekt erstellen, new Point() usw.,
besser wären aber vielleicht einfach nur zwei int-Variablen x und y

würde dein Programm stark vereinfachen, etwa

g.drawLine(p1.x, p1.y, p2.x, p2.y);
statt
g.drawLine(p1.getColorPoint().x, p1.getColorPoint().y, p2.getColorPoint().x, p2.getColorPoint().y);
 
Zuletzt bearbeitet von einem Moderator:

jsliderex

Mitglied
*aufdenkopfklatsch*
mMr fällt in letzter Zeit auf dass mir echt nur die blödesten, trivialsten Fehler passieren.
Manchmal steh ich echt auf der Leitung :autsch:

Ich bedanke mich herzlichst bei dir SlaterB! Die Fehlermeldung hab ich studiert --> also auch den
Konstruktor, aber bis ich da draufgekommen wäre..... :)

Also Danke nochmal! :applaus:
 

Ähnliche Java Themen

Neue Themen


Oben