Hallo...
Vorweg:
Ich bin ein Java-Neuling, habe aber schon fortgeschrittene Erfahrung mit Delphi, nur die Befehle und die Struktur von Java sind mir noch nicht ganz klar.
Meine Frage:
Wie rufe ich die Methoden von Klassen auf?
Eigentlich eine einfache Sache, jedoch sind meine Klassen in einem Array gespeichert und demnach müsste ich doch eigentlich schreiben array[stelle].methode() oder?
Mein Quelli siegt folgendermaßen aus:
Der Compiler gibt mir dabei folgende Fehlermedlung:
als weitere Fehler gibt er mir aus:
kann mir jemand weiterhelfen?
vielen dank schonmal im Vorraus
LG McWinston[/quote]
Vorweg:
Ich bin ein Java-Neuling, habe aber schon fortgeschrittene Erfahrung mit Delphi, nur die Befehle und die Struktur von Java sind mir noch nicht ganz klar.
Meine Frage:
Wie rufe ich die Methoden von Klassen auf?
Eigentlich eine einfache Sache, jedoch sind meine Klassen in einem Array gespeichert und demnach müsste ich doch eigentlich schreiben array[stelle].methode() oder?
Mein Quelli siegt folgendermaßen aus:
Code:
class UBahn
{
int l;
int i;
int pl;
int st;
int g;
UBahn()
{
Wagen[] w=new Wagen[3];
l=w.length;
i=0;
}
String addWagen(int x1, int x2)
{
Wagen wa=new Wagen(x1,x2);
if (i<=l)
{
w[i]=wa;
System.out.println("Wagen an Stelle"+i+"hinzugefügt");
i=i+1;
}
else
{
System.out.println("Es können keine Wagons mehr erstellet werden!");
}
}
String removeWagen()
{
if (i>0)
{
i=i-1;
w[i]=null;
System.out.println("Ein Wagen wurde erfolgreich gelöscht!");
}
else
{
System.out.println("Es kann kein Wagen gelöscht werden!");
}
}
int getgesamtSitzPlaetze()
{
pl=0;
for (int zahl1=0;zahl1<i;zahl1++)
{
pl=pl+w[zahl1].getSitzPlaetze();
};
}
int getgesamtStehPlaetze()
{
st=0;
for (int zahl2=0;zahl2<i;zahl2++)
{
st=st+w[zahl2].getStehPlaetze();
};
}
int getgesamtPlaetze()
{
g=0;
for (int zahl3=0;zahl3<i;zahl3++)
{
g=g+w[zahl3].getPlaetze();
};
}
}
Code:
public class Wagen
{
int sitze;
int steh;
Wagen(int sitze, int steh)
{
this.sitze=sitze;
this.steh=steh;
}
public int getSitzPlaetze()
{
return this.sitze;
}
public int getStehPlaetze()
{
return this.steh;
}
public int getPlaetze()
{
return sitze+steh;
}
}
Der Compiler gibt mir dabei folgende Fehlermedlung:
./UBahn.java:19: cannot find symbol
symbol : variable w
location: class UBahn
w=wa;
^
als weitere Fehler gibt er mir aus:
./UBahn.java:46: cannot find symbol
symbol : variable w
location: class UBahn
pl=pl+w[zahl1].getSitzPlaetze();
^
./UBahn.java:46: operator + cannot be applied to int,<any>.getSitzPlaetze
pl=pl+w[zahl1].getSitzPlaetze();
^
./UBahn.java:46: incompatible types
found : <nulltype>
required: int
pl=pl+w[zahl1].getSitzPlaetze();
^
kann mir jemand weiterhelfen?
vielen dank schonmal im Vorraus
LG McWinston[/quote]