Hallo. Ich bin gerade dabei ein wenig Java zu üben. Dabei habe ich folgendes Programm geschrieben. Was das Programm bewirken soll, ist denk ich ersichtlich:
Das Programm meldet allerdings Fehler, die da lauten:
und zwar in den Zeilen welche ich mit einem X vorweg markiert habe.
Nun wird mir als Verbesserungsvorschlag gegeben, den kontostand als static zu deklarieren. Allerdings verändert sich dann der Betrag darin nicht mehr (oder?). Und man soll immerhin etwas abziehen können (Beispiel). Da ja auch die Variablen bekannt sein müssen in der main, habe ich schon die Zeilen (markiert mit einem Y) eingefügt. Obwohl das im Unterricht bei anderen nicht nötig war. Leider weiß ich nicht mehr, was ich noch eingeben soll. Habe schon rumexperimentiert, das ist aber mehr gucken-was-geht anstatt wissen. wie kann ich ihm kontoStand bewusst machen (main)? Gebe ich es ein wie in Y markiert, kommen noch mehr Fehler (+3 Fehler mehr). Ihr seht bestimmt den Fehler sofort. Ich suche mich hier tot.. :-/
Code:
public class Konto {
private double kontoStand;
private String name;
private double betrag;
public Konto() {
kontoStand=200;
betrag=10;
name="Frieda";
}
//Methoden
public double getKontostand(){
return kontoStand;
}
public void gutschreiben (double betrag){
this.kontoStand=kontoStand+betrag;
}
public void abheben(double betrag){
this.kontoStand=kontoStand-betrag;
}
public static void main(String[] args) {
Konto konto1 = new Konto();
Y String name;
Y double betrag;
System.out.println("Name: " + name);
X System.out.println("Kontostand: " + kontoStand);
konto1.getKontostand();
konto1.gutschreiben(betrag);
X System.out.println("Kontostand nach Gutschrift: "+kontoStand);
konto1.abheben(betrag);
X System.out.println("Neuer Kontostand nach Abzug: " + kontoStand);
}
}
Das Programm meldet allerdings Fehler, die da lauten:
Exception in thread "main" java.lang.Error: Unresolved compilation problems:
Cannot make a static reference to the non-static field kontoStand
Cannot make a static reference to the non-static field kontoStand
Cannot make a static reference to the non-static field kontoStand
at Konto.main(Konto.java:31)
und zwar in den Zeilen welche ich mit einem X vorweg markiert habe.
Nun wird mir als Verbesserungsvorschlag gegeben, den kontostand als static zu deklarieren. Allerdings verändert sich dann der Betrag darin nicht mehr (oder?). Und man soll immerhin etwas abziehen können (Beispiel). Da ja auch die Variablen bekannt sein müssen in der main, habe ich schon die Zeilen (markiert mit einem Y) eingefügt. Obwohl das im Unterricht bei anderen nicht nötig war. Leider weiß ich nicht mehr, was ich noch eingeben soll. Habe schon rumexperimentiert, das ist aber mehr gucken-was-geht anstatt wissen. wie kann ich ihm kontoStand bewusst machen (main)? Gebe ich es ein wie in Y markiert, kommen noch mehr Fehler (+3 Fehler mehr). Ihr seht bestimmt den Fehler sofort. Ich suche mich hier tot.. :-/