# variable kann nicht aufgelöst werden!



## Floh (11. Jun 2009)

Ich habe folgendes Problem:
ich habe in einer Klasse variablen deklariert. Ich benötige sie in dieser Klasse, sowie auch in meiner zweiten Klasse, die in einem anderen Paket liegt. 
Jedoch möchte Eclipse die variablen nicht annehmen, da sie " nicht aufgelöst werden können". Von beiden Klassen habe ich in der jeweiligen Klasse ein neues Objekt angelegt, und dieses vor die variablen geschrieben:
_objekt1.variable.setText("... ");_

Freu mich über jede Hilfe ...


----------



## SlaterB (11. Jun 2009)

du hast doch schon ein Thema dazu?
http://www.java-forum.org/java-basi...202-wie-auf-eine-andere-klasse-zugreifen.html

nicht mehrere eröffnen, aber ich lass das in diesem Fall mal gelten..

die Variable (und die Klasse) muss public sein,
am besten immer gleich den Quellcode zu so elementaren Beispielen posten
+ möglichst genaue Fehlermeldung oder Screenshot

allgemein sind private-Variablen schöner, auf die nur mit public-Methoden zugegriffen wird


----------



## Lexi (11. Jun 2009)

Da du keinen Code gepostet hast, ist es grad ein wenig schwierig zu wissen, was du wissen möchtest.

Wäre gut, wenn du die betreffenden Code-Ausschnitte( wie die Variablen deklariert sind, und wie du sie genau aufrufst, bzw versucht sie aufzurufen ) hier posten könntest.


----------



## Floh (11. Jun 2009)

_public class Rechnung {


	Rechnung *rechnung1* = new Rechnung();

*public* int z1;
*public* String s1;

	Random zufGen = new Random();
	{
    z1 = zufGen.nextInt(50);
....._


Und in der 2. Klasse versuche ich es folgendermaßen zu verwenden:
_*rechnung1*.s1 = Integer.toString(rechnung1.z1);_

Importiert habe ich die Klassen, daran kann es also nicht liegen. Hoffe damit könnt ihr etwas anfangen ^^


----------



## faetzminator (11. Jun 2009)

```
public static Rechnung rechnung1 = new Rechnung();
```
wäre korrekt...


----------



## SlaterB (11. Jun 2009)

rechnung1 ist nicht public, das wäre doch nun wirklich machbar gewesen

aber hauptsächlich weiß in der zweiten Klasse niemand, was rechnung1 sein soll,
es könnte tausende Klassen mit je tausenden Objekten geben, in denen eine Variable rechnung1 definiert ist, wie sollen die erraten werden,

außerdem Endlosschleife:
stell dir vor, ein Rechnung-Objekt wird erstellt,
dann müssen die Klassenattribute definiert werden, also 
rechnung1 = new Rechnung();

-> es wird noch ein Rechnung-Objekt erstellt, wieder mit Klassenattribut rechnung1 
-> es wird noch ein Rechnung-Objekt erstellt, wieder mit Klassenattribut rechnung1 
-> es wird noch ein Rechnung-Objekt erstellt, wieder mit Klassenattribut rechnung1 
-> es wird noch ein Rechnung-Objekt erstellt, wieder mit Klassenattribut rechnung1 
...
Endlosschleife

----------

wahrscheinlich möchtest du gar nicht innerhalb der Rechnung eine weitere Rechnung, nimm die Zeile 
> Rechnung rechnung1 = new Rechnung();
aus der Klasse Rechnung weg und schreibe sie in der 2. Klasse direkt vor dem Befehl mit dem Fehler

nun ist alles klar, Rechnung ist repariert, und in der zweiten Klasse wird rechnung1 gefunden,
denn das ist ja die kurz zuvor definierte lokale Variable


----------



## Floh (11. Jun 2009)

hmm .. an dem *public static* lag es leider nicht, es kommen immer noch die gleichen Fehlermeldungen ...


----------



## Floh (11. Jun 2009)

Vielen Dank  ...


----------

