Objekte über mehrere Klassen (?)

*kopfkratz*
Also, im Zip- File sollten eigentlich der Ordner Classes und SRC sein und
TestMitKlassen.jpx.
Nichts im Ordner SRC drin?

Cya

Und hier noch stiftUndCo:
 

Anhänge

Zuletzt bearbeitet:
Hi, sorry hab ich übersehen.
Allerdings kann ich dein package stiftundco nicht finden und somit dein
Programm nicht übersetzen hast du vielleicht icq o. msn?

//edit ah danke
Gruß

RedWing
 
Hallo,
das Problem war nicht, deine Anwendung für sich sondern du hast deine
Bibliothekn stiftundco falsch angewendet..

Und zwar im Konstruktor TestAndwendung:

Code:
   TestAnwendung()
   {
     bildschirm = new Bildschirm(500,200); 
     stift = new Stift();
     tastatur = new Tastatur();
     maus = new Maus();
     hilfe = new Hilfe();
   }

nicht so:
Code:
   TestAnwendung()
   {

     stift = new Stift();
     bildschirm = new Bildschirm(500,200); 
     tastatur = new Tastatur();
     maus = new Maus();
     hilfe = new Hilfe();
   }

Das Problem ist das in deiner Bilbliothek in der Klasse Bildschirm eine neue
Klassenmember mit dem erschaffen wird, die irgendwie in deiner Bibliotheksklasse
Stift in der Methode Schreibe verwendet wird aber vorher im Konstruktor von Stift
auf eine neue Klassenmember von Stift zugewiesen wird aber nur wenn diese
!= null ist..
Wenn du nun stift vor bildschrim erschaffst,
ist die besagte Klassenmember von Bildschirm noch null und diese
Klassenmember kann somit im Stiftkonstruktor nicht zugwiesen werden.
Etwas kompliziert erlärt vielleicht erklärt es der Code aus deiner lib besser:

Stiftkonstrulktor:
Code:
  public Stift(){
        if (DasFenster.hauptFenster != null)
                {    
                        kenntBi=DasFenster.hauptFenster;                     
        } 
        this.setzeStandard();
  }
DasFenster.hauptFenster ist zu dem Zeitpunt noch null...
Schreibemethode:
Code:
public void schreibe(String ps)
  {
        gr=kenntBi.aktuellerGrafikkontext(); //NUllpointer Exception
        setzeZustand(gr);

        if (gr != null) {

        gr.drawString(ps,(int)Math.round(zstiftx),(int)Math.round(zstifty));

        //kenntBi.repaint();
        zstiftx=zstiftx+gr.getFontMetrics().stringWidth(ps);

        }
        gr = null;
  }

Hier passierts kentBi is null, somit tritt eine Speicherzugriffsverletzung auf...

Lange Rede kurzer Sinn:
Bevor du die Lib stiftUndCo anwendest guck dir vorher immer die Doku genau
an, und ziehe auch eventuelle Bsp mit ein die vielleicht in der Doku die
Anwendung dieser Erklären...

Gruß

RedWing
 
*rofl*
Neeein, das ist doch nicht wahr.
So ein kleiner Fehler, aber darauf erstmal zu kommen, nicht schlecht, meinen Respekt!
*knuuutsch* Boh, ich liebe dich.

Puh *tief durchatme*

Also, ich habe heute von Snape und vor allem von die sehr sehr viel gelernt.
Ich bin dir echt total dankbar.
Ich werde nun öfters mal in die Einzelheiten des stiftUndCo- Pakets schauen, um die Fehler auch selber zu finden, falls es welche gibt.

Nochmal herzlichen Dank, nun funktioniert es auch bei mir, alles top.

Krass, echt, sone Kleinigkeit, hehe, unglaublich.

So, jetzt wird erstmal auf einem neuen Niveau programmiert :D

Dankeschöööön


Cya
-Perry-
 
Zuletzt bearbeitet:
Zurück