Was ist an dieser Klasse fehlerhaft

  • Antworten:4
  • Bentwortet
Klaus V.
  • Forum-Beiträge: 2

19.12.2015, 15:27:16 via Website

Hi,
Dieser Thread war in ähnlicher Form schon einmal drinnen und ist gelöscht, bzw. beendet worder, ohne die Frage zu beantworten:
Ich stelle das jetzt einmal genauso rein, da ich die gleiche Frage habe und bei der Suche hier gelandet bin, ist das ok so?
In der Angabe steht: Diese Klasse enthält einen Fehler, beschreibe das Problem und wie Sie es lösen können.

import java.awt.TextField;

public class ESA {
public void init()
{
TextField tfAnzeige = new TextField();
}
public void doSomething()
{
tfAnzeige.setText("Hello World");
}
}

Das Beispiel stammt aus einem Aufgabenbuch, das ist auch der ganze Code.
Ich weiß damit rein garnichts anzufangen, wer das Beispiel kennt, könnte mir doch bitte helfen.

Hat jemand eine Idee?

Eine Lösung zum Beispiel ist im Buch nicht vorhanden

Schöne Grüße
Originalthread: darf ich als "Neuer" nicht verlinken...

— geändert am 19.12.2015, 16:37:44

Antworten
Andy N.
  • Forum-Beiträge: 22.375

19.12.2015, 15:53:55 via Website

Hallo Klaus

Herzlich willkommen bei uns im Forum :)

ich habe deinen Thread mal in unseren Entwickler-Bereich verschoben, da passt er etwas besser ;)

Bitte beachte, dass Threads mit nicht aussagekräftigem Titel bei uns üblicherweise den Regeln entsprechend entfernt werden. Ich bitte dich daher, deinen Threadtitel innerhalb der nächsten 24 Stunden, spätestens jedoch bei deinem nächsten Besuch noch etwas aussagekräftiger zu gestalten (Hierfür einfach unter deinem ersten Beitrag auf 'bearbeiten' klicken, dann kannst du oben noch mal den Titel anpassen)

Danke :)

Viele Grüße,
Andy


OnePlus 3 (Resurrection Remix 5.8.2)
LG G Watch

Regeln | unsere Mods & Admins

Klaus V.

Antworten
Gelöschter Account
  • Forum-Beiträge: 2.492

19.12.2015, 16:14:51 via App

Hallo das Textfeld ist eine lokale Variable der init Methode. Deshalb kann in der doSomething Methode nicht darauf zugegriffen werden. Würdest du das so in eine Entwicklungsumgebung packen würde er schon meckern.
Eine Lösung (es gibt mehrere) ist das Textfeld als Instanzvariable festzulegen.

— geändert am 19.12.2015, 16:16:50

Klaus V.

Antworten
Klaus T.
  • Forum-Beiträge: 8.183

19.12.2015, 16:24:36 via Website

tfAnzeige ist in init() definiert, aber es soll in doSomething() drauf zugegriffen werden. Das geht natürlich so nicht.

Vielleicht solltest du mal mit einem Basis-Tutorial ganz von Anfang an anfangen?

Ooops...ich war wieder viiiiel zu langsam (yawn)

— geändert am 19.12.2015, 16:26:34

if all else fails, read the instructions.

Klaus V.

Antworten
Klaus V.
  • Forum-Beiträge: 2

19.12.2015, 20:38:19 via Website

Hallo Klaus, hallo Lars, Danke für Eure schnellen Antworten

ich sag sonst weiter nichts drauf...

Antworten