# Ein undefinierbarer Fehler.



## Guest (20. Jun 2006)

Ich habe ein Applet geschrieben, welches aber 2 für mich undefinierbare Fehler ausweißt... Hier mein Fehler:






Hier ist mein Code:

```
import java.awt.event.*;
import java.awt.*;
import java.applet.*;

public class AppletTest extends Applet {
 Label l_text;
 TextField tf_text;
 Button b_send;
 class Lauscher implements ActionListener {
  public void actionPerfomed(ActionEvent e) {
   l_text.setText(b_send.getText());
  }
 }
 public void init() {
  l_text = new Label("");
  tf_text = new TextField(10);
  b_send = new Button("SENDEN!!");

  setLayout(new FlowLayout(FlowLayout.LEFT));

  add(l_text);
  add(tf_text);
  add(b_send);

  b_send.addActionListener(new Lauscher());
 }
}
```

Ich würde ja sagen das in der Headerdatei ein import fehlt, was aber bei diesen Fehlermeldungen sehr unwarscheinlich ist. Was ist also nun der Fehler?


----------



## L-ectron-X (20. Jun 2006)

In Java gibts keine Header-Dateien.
Du hast nur einen Methodennamen verkehrt geschrieben, welcher zwingend erforderlich ist.

Die Methode heißt nicht





> public void actionPerfomed(ActionEvent e)


sondern
	
	
	
	





```
public void actionPerformed(ActionEvent e)
```

BTW sollten Instanzvariablen private deklariert werden.


----------



## dieta (20. Jun 2006)

:arrow: Der erste deiner Fehler beruht darauf, das (wie angezeigt wird) deine Klasse "Lauscher" das Interface "ActionListener" implementiert, nicht aber dessen Methode "actionPerformed(ActionEvent evt)" (bei dir fehlt da ein "r").
 :arrow: Der zweite Fehler beruht darauf, dass es die Methide "getText" in der Klasse "Button" nicht gibt (du meinst wohl Button.getLabel(), siehe auch API).
 :arrow: Und drittens: Seit wann gibt es in java "Headerdateien" ???:L ?


----------



## Guest (20. Jun 2006)

Okay, Headerdateien, bzw die includes... Es ist gewohnheit von C++.  Ich meinte nur die includes!

Habe hier: http://www.java-forum.org/de/viewtopic.php?t=32288&highlight= gesehen, dass mit getText()... :/

Bei der ActionPerformed Methode ist ja noch Event drin, wobei ich nicht glaube das das auch noch nötig ist. Wie genau soll getText funktionieren? :S Ich habe es aus dem anderen herauskopiert und dachte das sollte dann so funktionieren.

L-ectron-X : Wieso sollte man die als private deklarieren? :S


----------



## dieta (20. Jun 2006)

Äähm... in Java gibt es auch keine Includes... ???:L

Zu deiner Frage: 
Ich glaube, du meinst

```
tf_text.getText()
```
oder willst du dir die Beschriftung des Buttons holen?  :wink:

[edit]Man sollte Instanzvariablen als private deklarieren, weil man an Sonsten Änderungen der Variablen nicht mehr kontrollieren kann. Das ist insofern schlecht, da man dann z.B. "aus Versehen" die Variable auf - z.B. - null setzen kann, und sich dann nachher über die nullPointerException ärgert und den Fehler sucht. [/edit]


----------



## Guest (20. Jun 2006)

C++ : #include <>
Java : import ???;

 Ich meinte doch den import! 

Aber danke, das war der Fehler... Wieso ich den Text aus den Button auslesen wollte, weiß ich nicht.  Nun klappt alles wunderbar! Danke


----------



## Guest (20. Jun 2006)

Eh, mist! Ich kann nicht editieren. Tut mir leid!! Eines wäre da noch: Wieso als private meine Formular Felder deklarieren?


----------



## L-ectron-X (21. Jun 2006)

Lies dazu mal den Beitrag von dbac in den FAQs:
http://www.java-forum.org/de/viewtopic.php?t=4354


----------

