Hallo alle miteinander,
bin mittlerweile echt ratlos was da falsch sein soll, weil beide Methoden eigentlich nicht static sein sollten. Folgendes: Ich hab einmal eine Klasse Lager und die Klasse LagerDialog, welche auf Lager zugreift. Dabei will ich im Dialog die Methode legeAnArtikel(); aufrufen, aber das geht nicht.
[CODE lang="java" title="Klasse Lager"]public void legeAnArtikel(Artikel artikel){
artikelArray[anzahlArtikel] = artikel;
anzahlArtikel++;
}[/CODE]
[CODE lang="java" title="Klasse LagerDialog" highlight="19"]private void legeAnArtikel(){
System.out.println("Artikelnummer: ");
int artikelNr = input.nextInt();
input.nextLine();
System.out.println("Art des Artikels: ");
String art = input.nextLine();
System.out.println("Bestand: ");
int bestand = input.nextInt();
input.nextLine();
System.out.println("Preis: ");
double preis = input.nextDouble();
input.nextLine();
Artikel artikel = new Artikel(artikelNr, art, bestand, preis);
Lager.legeAnArtikel(artikel);
}[/CODE]
Den Fehler hab ich jetzt unten bei Lager.legeAnArtikel(artikel), dort steht dann: "non-static method legeAnArtikel(Artikel) cannot be referenced from a static context"
Artikel sind Objekte, die ich erstellen kann und die Methode legeAnArtikel in Lager braucht so ein Artikel objekt als parameter. Beide Methoden sollten soweit ich weiß non static sein. Arbeite mit BlueJ übrigens
Ich hoffe mal, dass genug Infos hier drin sind, damit mir jemand helfen kann, bei Fragen dazu kann ich natürlich immer noch antworten! danke im voraus
bin mittlerweile echt ratlos was da falsch sein soll, weil beide Methoden eigentlich nicht static sein sollten. Folgendes: Ich hab einmal eine Klasse Lager und die Klasse LagerDialog, welche auf Lager zugreift. Dabei will ich im Dialog die Methode legeAnArtikel(); aufrufen, aber das geht nicht.
[CODE lang="java" title="Klasse Lager"]public void legeAnArtikel(Artikel artikel){
artikelArray[anzahlArtikel] = artikel;
anzahlArtikel++;
}[/CODE]
[CODE lang="java" title="Klasse LagerDialog" highlight="19"]private void legeAnArtikel(){
System.out.println("Artikelnummer: ");
int artikelNr = input.nextInt();
input.nextLine();
System.out.println("Art des Artikels: ");
String art = input.nextLine();
System.out.println("Bestand: ");
int bestand = input.nextInt();
input.nextLine();
System.out.println("Preis: ");
double preis = input.nextDouble();
input.nextLine();
Artikel artikel = new Artikel(artikelNr, art, bestand, preis);
Lager.legeAnArtikel(artikel);
}[/CODE]
Den Fehler hab ich jetzt unten bei Lager.legeAnArtikel(artikel), dort steht dann: "non-static method legeAnArtikel(Artikel) cannot be referenced from a static context"
Artikel sind Objekte, die ich erstellen kann und die Methode legeAnArtikel in Lager braucht so ein Artikel objekt als parameter. Beide Methoden sollten soweit ich weiß non static sein. Arbeite mit BlueJ übrigens
Ich hoffe mal, dass genug Infos hier drin sind, damit mir jemand helfen kann, bei Fragen dazu kann ich natürlich immer noch antworten! danke im voraus