[Java] Anfängerprogramm

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von klaiser, 6. September 2007 .

Schlagworte:
  1. 6. September 2007
    Anfängerprogramm

    Hiho Rushys,

    ich habe ein kleines Problem und das ist folgendes:
    Ich möchte aus einer Klasse etwas in der Konsole ausgeben hier z.B. für den Anfang 100. Leider kriege ich einen Fehler:

    Code:
    Compiliere I:\AE FOS\Aufgabe 1\MonopolySpieler.java mit Java-Compiler
    I:\AE FOS\Aufgabe 1\MonopolySpieler.java erfolgreich compiliert!
    
    Compiliere I:\AE FOS\Aufgabe 1\Monopoly.java mit Java-Compiler
    Monopoly.java:4:29: cannot find symbol
    symbol : method getKontostand()
    location: class Monopoly
     System.out.println(Spiel.getKontostand());
     ^
    1 error
    
    
    Bin leider noch total neu und verzweifle, zwar sagte mir meine Lehrerin es sei sehr ähnlich wie Klassen in C++ aber dennoch ein Problem bei mir. :-(

    Hier der kleine Code:
    Klasse:
    Code:
    public class MonopolySpieler {
    
     // Anfang Variablen
     private int Kontostand;
     private String Name;
     private int zahl;
     // Ende Variablen
    
     // Anfang Ereignisprozeduren
     public MonopolySpieler(){
     Kontostand=100;
     Name="Dennis";
     }
     
     public int getKontostand(){
     return zahl;
     }
     
     public void setKontostand(int i){
     this.zahl=i;
     }
     
     // Ende Ereignisprozeduren
    }
    
    Ausgabe:
    Code:
    class Monopoly{
     public static void main(String[] args){
     Monopoly Spiel = new Monopoly();
     System.out.println(Spiel.getKontostand());
     }
    }
    Bewertung ist selbstverständlich sicher.
     
  2. 6. September 2007
    AW: Anfängerprogramm

    Moin klaiser,

    an der Klasse kontostand fällt mir auf, dass der Wert Zahl in der Methode getKontostand ohne Verweis auf die eigene Klasse aufgerufen wird.
    Code:
    return this.zahl;
    Ich glaube nicht, dass das der Fehler ist. Vielleicht kannst Du mal den ganzen Code posten, also den Teil in dem die Klasse instanziiert und die Methode aufgerufen wird (der Compiler meckert ja Zeile 29 an).

    //EDIT: Sorry hab nicht richtig hingeguckt.

    Dein Fehler ist, dass Du ein Objekt der Klasse Monopoly instanziierst
    Code:
    Monopoly Spiel = new Monopoly();
    und dann versuchst, die Methode der Klasse MonopolySpieler aufzufrufen.

    Ohne Java wirklich zu können würd ich sagen probier's mal so:
    Code:
    MonopolySpieler spieler = new MonopolySpieler();
    System.out.println(spieler.getKontostand);
    //EDIT: Da war K-Ni wohl genau so schnell...

    BG MaxDev
     
  3. 6. September 2007
    AW: Anfängerprogramm

    Moin

    Das Problem besteht darin, dass du versuchst eine Methode aufzurufen, die es in der Klassse gar nicht gibt.

    Guck dir den Code noch mal genau an:

    Die Methode gibt's in der Klasse "MonopolySpieler".

    Du versuchst sie aber bei einem Objekt der Klasse "Monopoly" aufzurufen!

    Zu diesem Zeitpunkt macht der Befehl sowieso keinen Sinn!

    Ich greif dir mal ein bisschen unter die Arme :
    Code:
    class Monopoly{
     // Anfang Variablen
     private MonopolySpieler SpielerEins; //z.B. ein neuer Spieler
     // Ende Variablen
    
     // Anfang Ereignisprozeduren
     public Monopoly() //Konstruktor
     {
     SpielerEins = new MonopolySpieler();
     System.out.println(spielerEins.getKontostand()); //Jetzt könnte man den Kontostand ausgeben
     }
    
     // Ende Ereignisprozeduren
    
     public static void main(String[] args)
     {
     Monopoly Spiel = new Monopoly();
     }
    }
     
  4. 6. September 2007
    AW: Anfängerprogramm

    Ihr seid Spitze werde es gleich mal ausprobieren.

    Bewertung ist ecuh sicher. ;-)
     
  5. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.