You are not logged in.

  • Login

1

Friday, May 7th 2010, 10:19pm

Fehlermeldung - Cannot find symbol

Hallöchen, ich hoffe ihr könnt mir helfen :) Die Fehlermeldung "cannot find symbol - variable entfernung" kann ich nicht lösen.


Ich möchte den blauen Ball, den ich in der Klasse Zeichnung hinzugefügt habe, springen lassen. Dazu wollte ich aus einer andere Klasse Kreis die Methode zu "Bewege diesen Kreis langsam vertikal um 'entfernung' Bildschirmpunkte" einfach kopieren. Nun ja, irgendwie wäre es ja auch zu einfach gewesen. Was fehlt denn jetzt genau?

Vielen Dank fürs Anschauen!


Ersteinmal der Quellcode:

Java Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
/**
 * Diese Klasse definiert eine einfache Zeichnung. Um die Zeichnung auf
 * dem Bildschirm anzeigen zu lassen, muss die zeichne-Operation auf
 * einem Exemplar aufgerufen werden.
 * Aber hier steckt mehr drin: Da es eine elektronische Zeichnung ist,
 * kann sie geändert werden. Man kann sie schwarz-weiß anzeigen lassen
 * und dann wieder in Farbe (nachdem sie gezeichnet wurde, ist ja klar).
 * 
 * Diese Klasse ist als frühes Java-Lehrbeispiel mit BlueJ gedacht.
 * 
 * @author  Michael Kölling und David J. Barnes
 * @version 2006.03.30
 */
public class Zeichnung
{
    private Quadrat wand;
    private Quadrat fenster;
    private Dreieck dach;
    private Kreis sonne;
    private Quadrat schornstein;
    private Dreieck baum;
    private Quadrat stamm;
    private Kreis ball;
 
    /**
     * Erzeuge ein Exemplar der Klasse Zeichnung
     */
    public Zeichnung()
    {
        // nichts zu tun hier, alle Exemplarvariablen werden automatisch
        // mit null initialisiert.
    }
 
    /**
     * Zeichne die Zeichnung.
     */
    public void zeichne()
    {
        wand = new Quadrat();
        wand.vertikalBewegen(80);
        wand.groesseAendern(100);
        wand.sichtbarMachen();
 
        fenster = new Quadrat();
        fenster.farbeAendern("schwarz");
        fenster.horizontalBewegen(20);
        fenster.vertikalBewegen(100);
        fenster.sichtbarMachen();
 
        dach = new Dreieck();  
        dach.farbeAendern("gruen");
        dach.groesseAendern(50, 140);
        dach.horizontalBewegen(60);
        dach.vertikalBewegen(70);
        dach.sichtbarMachen();
 
        sonne = new Kreis();
        sonne.farbeAendern("gelb");
        sonne.horizontalBewegen(180);
        sonne.vertikalBewegen(-10);
        sonne.groesseAendern(60);
        sonne.sichtbarMachen();
 
        schornstein = new Quadrat();
        schornstein.farbeAendern("schwarz");
        schornstein.horizontalBewegen(65);
        schornstein.vertikalBewegen(40);
        schornstein.groesseAendern(20);
        schornstein.sichtbarMachen();
 
        baum = new Dreieck();
        baum.farbeAendern("gruen");
        baum.groesseAendern(140, 50);
        baum.horizontalBewegen(145);
        baum.vertikalBewegen(55);
        baum.sichtbarMachen();
 
        stamm = new Quadrat();
        stamm.farbeAendern("schwarz");
        stamm.vertikalBewegen(160);
        stamm.horizontalBewegen(125);
        stamm.groesseAendern(20);
        stamm.sichtbarMachen();
 
        ball = new Kreis();
        ball.farbeAendern("blau");
        ball.horizontalBewegen(142);
        ball.vertikalBewegen(152);
        ball.groesseAendern(18);
        ball.sichtbarMachen();
    }
 
    /**
     * ᅵndere die Darstellung in schwarz-weiᅵ.
     */
    public void inSchwarzWeissAendern()
    {
        if(wand != null)   // nur wenn schon gezeichnet wurde ...
        {
            wand.farbeAendern("schwarz");
            fenster.farbeAendern("weiss");
            dach.farbeAendern("schwarz");
            sonne.farbeAendern("schwarz");
            schornstein.farbeAendern("schwarz");
            baum.farbeAendern("schwarz");
            stamm.farbeAendern("schwarz");
            ball.farbeAendern("schwarz");
        }
    }
 
    /**
     * ᅵndere die Darstellung in Farbe.
     */
    public void inFarbeAendern()
    {
        if(wand != null)   // nur wenn schon gezeichnet wurde ...
        {
            wand.farbeAendern("rot");
            fenster.farbeAendern("schwarz");
            dach.farbeAendern("gruen");
            sonne.farbeAendern("gelb");
            schornstein.farbeAendern("schwarz");
            baum.farbeAendern("gruen");
            stamm.farbeAendern("schwarz");
            ball.farbeAendern("blau");
        }
    }
 
 /**
     * ᅵndere die Darstellung in Unsichtbar.
     */
    public void unsichtbarMachen()
    {
        if(wand != null)   // nur wenn schon gezeichnet wurde ...
        {
            wand.farbeAendern("weiss");
            fenster.farbeAendern("weiss");
            dach.farbeAendern("weiss");
            sonne.farbeAendern("weiss");
            schornstein.farbeAendern("weiss");
            baum.farbeAendern("weiss");
            stamm.farbeAendern("weiss");
            ball.farbeAendern("weiss");
       }
    }
 
    /**
     * Bewege diesen Ball langsam vertikal um 'entfernung' Bildschirmpunkte.
     */
    public void ballSpringen(){
        int delta;
 
        if (entfernung < 0) {
            delta = -1;
            entfernung = -entfernung;
        } else {
            delta = 1;
        }
 
		for (int i = 0; i < entfernung; i++) {
			yPosition += delta;
			zeichnen();
		}
	}
}



Ich hoffe, es war ok es einfach reinzukopieren ...

LG Christin

2

Saturday, May 8th 2010, 11:02am

Hi,

entfernung, yPosition und zeichnen() (soll das vll. zeichne() heissen ?) sind nirgends definiert !

3

Saturday, May 8th 2010, 7:00pm

Wie definiert man?

Wie definiert man sowas? Ich bin ziemlicher Anfänger, quasi mein erster Versuch.

4

Saturday, May 8th 2010, 7:53pm

definieren -> deklarieren ... sonst kannst du mit den Variablen nicht arbeiten.

Similar threads

Social bookmarks