Übergabe von Variablen

Status
Nicht offen für weitere Antworten.
O

oli_doh

Mitglied
Hallo zusammen,

ich bin gerade dabei eine Hausaufgabe zu machen und stoße hierbei auf folgendes Problem :(

In einer Datei habe ich eine Klasse, die u. a. folgenden Quellcode beinhaltet:

DATEI 1 (ErweitertesAuto.java)

Java:
public void faehrtNach(String ziel, int entfernung) {
        System.out.println("Das Auto faehrt nach  " + this.ziel + " und legt dabei");
        System.out.println(+ this.entfernung + " km zurueck.");
    }

Für die Variablen ziel und entfernung habe ich keinen Konstruktoren angelegt. Wenn ich das über einen Konstruktoren regel und dafür die Klammer nach public void faehrtNach paramerlos lasse also [ public void faehrtNach() ] dann greift die Klasse der Datei 2 problemlos auf die Klasse in der Datei 1 zu.

In der anderen Datei stehen die Werte für die Variablen ziel und entfernung und dort sollen Sie auf von der JVM verarbeitet werden. Der Quellcode sieht dazu wie folgt aus:

DATEI (AutoTestErweitert.java)

Java:
    // Erstellen der main methode, damit die JVM anfängt zu arbeiten
    public static void main (String[] args) {
         ErweitertesAuto eins = newErweitertesAuto("Duesseldorf", 269);
        eins.faehrtNach();
    

    }
}

Woran liegt es, dass wenn ich Datei 2 compiliere folgende Fehlermeldung erhalte?

... cannot be applied to ()

Zielsetzung ist eben die, dass die beiden Variablen aus Datei 2 in Datei 1 verarbeitet werden und dann durch Datei 2 auf den Bildschirm ausgeworfern werden.

Vielen Dank für Eure Hilfe.
 
E

eRaaaa

Top Contributor
also du musst unterscheiden was eig. objektvariablen sind, und was nicht. ich denke, hier machts wenig sinn, ziel und entfernung als objektvariablen anzusehen.
(wobei noch ganz unklar ist, um was für eine klasse es sich eig. genau handelt(erweitertesauto ?? )

daher sieht in datei 1
Java:
public void faehrtNach(String ziel, int entfernung) {
        System.out.println("Das Auto faehrt nach  " + this.ziel + " und legt dabei");
        System.out.println(+ this.entfernung + " km zurueck.");
    }
das garnicht so schlecht aus, bis auf die sache mit dem this.

Java:
public void faehrtNach(String ziel, int entfernung) {
        System.out.println("Das Auto faehrt nach  " + ziel + " und legt dabei \n " + entfernung + " km zurueck.");
    }

in datei2, mhmm..
Java:
ErweitertesAuto eins = new ErweitertesAuto();
        eins.faehrtNach("Duesseldorf", 269);
eher so dann.

du solltest dir vllt nochmal die sache mit dem konstruktor und dem this operator durchlesen.
 
Zuletzt bearbeitet:
arthur177

arthur177

Mitglied
ErweitertesAuto hört sich start nach vererbung an:)

aber zum übergeben von Variablen hast du ja
Java:
public void faehrtNach(String ziel, int entfernung) {
...
}
Diese Methoder erwartet ja die 2 Variablen ziel und entfernung. Wenn du dann die Methode aufrufst musst du der Methode genau diese Werte übergeben. Sprich:
Java:
ErweitertesAuto eins = newErweitertesAuto("Duesseldorf", 269);
        eins.faehrtNach(ziel, entfernung);

Was du da gemacht hast ist, du hast der Klasse (ErweitertesAuto) die Werte übergeben. Dafür brauchst du aber einen Konstruktor in dieser Klasse.
http://www.kbs.uni-hannover.de/Lehre/Info1/skript_0001/java/konstruktoren.htm

Auf der Seite findest du noch einige Infos die du als Anfänger und natürlich auch später können MUSST.
Guido Krger - JAVA 1.1 lernen - Kapitel 7 Methoden
 
O

oli_doh

Mitglied
Hallo,

vielen Dank für Eure Hilfe, aber es funktioniert trotzdem nicht. Wahrscheinlich habe ich mich zu undeutlich in meiner Fragestellung ausgedrückt. Daher hier einmal die kompletten Codes.

ErweitertesAuto.java

Java:
    //Eröffnen der neuen Klasse
    public class ErweitertesAuto {
  
    //Hier werden die Attribute standort und verbrauch ins Leben gerufen.
    public String besitzer;
    public String autotyp;
    public String farbe;
    public int erstzulassung;
    public int kmStand;
    public String standort;
    public float verbrauch;
    public String ziel;
    public int entfernung;


    //Hier kommt der Konstruktor, der alle Attribute initialisiert.

    public ErweitertesAuto (String besitzer, String autotyp, String farbe,
                               int erstzulassung, int kmStand, String standort, float verbrauch) {
    this.besitzer = besitzer;
    this.autotyp = autotyp;
    this.farbe = farbe;
    this.erstzulassung = erstzulassung;
    this.kmStand = kmStand;
    this.standort = standort;
    this.verbrauch = verbrauch;
    }

    //Hier erfolgt die saubere Erfassung der Werte und die Verabeitung in anständige Sätze
    public void alleDatenAusgeben() {
        System.out.println("Der Besitzer des " + this.autotyp + " heisst: " + this.besitzer + "\n");
        System.out.println("Das Auto hat die Farbe " + this.farbe + "\n");
        System.out.println("Zugelassen wurde der Wagen im Jahr " + this.erstzulassung + "\n");
        System.out.println("Der aktuelle Kilometerstand betraegt " + this.kmStand + "km.\n");
        System.out.println("Aktuell steht der Wagen im schoenen " + this.standort + "\n");
        System.out.println("Der Verbrauch des " + this.autotyp + " betraegt durchschnittlich " + this.verbrauch);
        System.out.println("Liter pro 100 gefahrene Kilometer.\n");
    }

    public void faehrtNach(String ziel, int entfernung) {
        System.out.println("Das Auto faehrt nach " + ziel + " und legt dabei");
        System.out.println(+ entfernung + " km zurueck.");
    }
}

und

AutoTestErweitert.java

Java:
// Erstellen einer neuen Klasse mit dem Namen AutoTestErweitert, die letztenendes auf die Klasse ErweitertesAuto zugreift.

public class AutoTestErweitert {

    // Erstellen der main methode, damit die JVM anfängt zu arbeiten
    public static void main (String[] args) {
        ErweitertesAuto bmw = new ErweitertesAuto("Heidi", "BMW", "blau", 1996, 178323, "Frankfurt", 9.7f);
        ErweitertesAuto eins = new ErweitertesAuto("Duesseldorf",350);
        bmw.alleDatenAusgeben();
        eins.faehrtNach(ziel, entfernung);
    }
}


Vielen Dank noch einmal.
 
0x7F800000

0x7F800000

Top Contributor
wie wär's wenn du einfach nur die überflüssigen parameter bei der deklaration der [c]faehrtNach[/c]-methode löschst? (und beim aufruf natürlich auch: es werden ja keine parameter gebraucht)

Und außerdem: für ein "erweitertes" Auto besitzt die Klasse wirklich erstaunlich viele redundant aussehende member-variablen (was man ohne die Superklasse zu sehen natürlich nicht genau sagen kann)
 
O

oli_doh

Mitglied
Hallo 0x7F800000,

Du hast natürlich recht, wenn ich die "überflüssigen" Parameter in der Deklaration faehrtNach lösche, dann funktioniert es auch, aber das ist eben nicht das, was der Prof möchte. In der Aufgabenstellung steht leider eindeutig drin void(faehrNach(String ziel, int entfernung).

Aber trotzdem vielen Dank

auch ein großes Dankeschön an die anderen, werde mich jetzt nocheinmal daran versuchen :)
 
arthur177

arthur177

Mitglied
Wenn ich dich richtig verstanden habe und die Klases ErweitertesAuto richtig ist, dann müsste die Klasse AutoTestErweitert etwa so aussehen:
Java:
public class AutoTestErweitert {
 
    // Erstellen der main methode, damit die JVM anfängt zu arbeiten
    public static void main (String[] args) {
        ErweitertesAuto bmw = new ErweitertesAuto("Heidi", "BMW", "blau", 1996, 178323, "Frankfurt", 9.7f);
        bmw.alleDatenAusgeben();
        bmw.faehrtNach("Duesseldorf",350);
    }
}
 
O

oli_doh

Mitglied
Hallo arthur177,

super, danke, es klappt. Vielen Dank auch noch für die Links, die helfen :)

Wie schließe ich denn jetzt das Thema hier im Forum, damit es als erledigt deklariert wird?
 
O

oli_doh

Mitglied
Toll, wer lesen kann ist klar im Vorteil, das schwarze ist die Schrift. Hatte in der Hilfe nach Thema schließen gesucht - was natürlich ein flopp.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Problem bei Übergabe von Variablen Java Basics - Anfänger-Themen 1
R Vererbung Übergabe von Variablen der Superklasse an Subklasse mit "extends" Java Basics - Anfänger-Themen 5
F Variablen Übergabe von eingelesenen Variablen in neue Klasse Java Basics - Anfänger-Themen 15
A Übergabe von Variablen zu Paintmethode Java Basics - Anfänger-Themen 2
K Übergabe einer im EventListener definierte variablen Java Basics - Anfänger-Themen 2
M Übergabe von Variablen in eine Klasse Java Basics - Anfänger-Themen 13
G Übergabe Variablen von Servlet zu JSP? Java Basics - Anfänger-Themen 4
D Übergabe von Variablen Java Basics - Anfänger-Themen 11
K Übergabe des Wertes einer Variable aus main() in eine Klassenmethode Java Basics - Anfänger-Themen 8
K Übergabe von Werten (zweidimensionales Array) aus einer Methode an zweidimensionales Array in main() Java Basics - Anfänger-Themen 3
S Übergabe von Arrays an Methoden Java Basics - Anfänger-Themen 20
Curtis_MC Parameter-Übergabe bei Klassen und Methoden Java Basics - Anfänger-Themen 12
D Methode mit Übergabe double und Rückgabe String Java Basics - Anfänger-Themen 2
L Methoden Übergabe von Parameter Java Basics - Anfänger-Themen 3
K Java Problem mit Übergabe von argumenten Java Basics - Anfänger-Themen 3
J Übergabe von Parametern an andere Methoden Java Basics - Anfänger-Themen 5
D Probleme mit der Übergabe einer BorderPane Java Basics - Anfänger-Themen 2
R Methoden Übergabe von einer Methodenvariable Java Basics - Anfänger-Themen 3
M Übergabe von Werten Java Basics - Anfänger-Themen 10
arjoopy Kapselung Übergabe von Objekten aus ArrayList Java Basics - Anfänger-Themen 4
C Erste Schritte Übergabe von Klassen Java Basics - Anfänger-Themen 2
C Methoden Objekte und Methode und Übergabe Java Basics - Anfänger-Themen 4
O Übergabe in eine andere Klasse Java Basics - Anfänger-Themen 3
M Übergabe / Rückgabe Java Basics - Anfänger-Themen 6
S Kapselung Objekt bei Übergabe an Konstruktor nicht initalisiert Java Basics - Anfänger-Themen 3
fLooojava Probleme bei der Übergabe einer Variable Java Basics - Anfänger-Themen 14
A Problem mit set.Text und übergabe Java Basics - Anfänger-Themen 2
S OOP Übergabe eines Objektes? Java Basics - Anfänger-Themen 1
fLooojava OOP Übergabe/Output in Textfield Java Basics - Anfänger-Themen 4
Furtano OOP Memento Pattern | übergabe einer Kopie des Arrays Java Basics - Anfänger-Themen 0
U Übergabe von Objekten Java Basics - Anfänger-Themen 0
J ArrayList toString() Übergabe Fehler Java Basics - Anfänger-Themen 2
J Problem bei Param.übergabe und dem erstellen von JButtons Java Basics - Anfänger-Themen 4
S Übergabe Java Basics - Anfänger-Themen 14
S Klassen Array: Übergabe von Klasse zur Main Java Basics - Anfänger-Themen 8
A NullPointerException bei Übergabe eines Array Java Basics - Anfänger-Themen 8
feardorcha Methodenaufruf Übergabe- und Rückgabewert Java Basics - Anfänger-Themen 5
D Klassen Problem - Übergabe an Konstruktor von Superklasse Java Basics - Anfänger-Themen 2
D Objekt Übergabe Java Basics - Anfänger-Themen 12
M Array Übergabe Java Basics - Anfänger-Themen 17
W Übergabe Stringzeilen von serieller Schnittstelle in andere Klasse Java Basics - Anfänger-Themen 3
B Übergabe Dateiname (String) an andere Klasse Java Basics - Anfänger-Themen 4
P Methoden Übergabe von Werten Java Basics - Anfänger-Themen 7
M Fragen zu Methoden (void/return), Übergabe von Parametern Java Basics - Anfänger-Themen 3
M problem mit string übergabe an klasse Java Basics - Anfänger-Themen 10
A übergabe wert in andere klasse Java Basics - Anfänger-Themen 8
N Array Übergabe Java Basics - Anfänger-Themen 9
L Klassen Parameter Übergabe Java Basics - Anfänger-Themen 12
A OOP Übergabe eines Wertes an den enum Konstruktor Java Basics - Anfänger-Themen 12
Darth Simple Übergabe eines Strings an eine Methode Java Basics - Anfänger-Themen 3
A Frage zur Übergabe von Strings Java Basics - Anfänger-Themen 9
N Übergabe problem Java Basics - Anfänger-Themen 6
M Übergabe von VM Argumenten Java Basics - Anfänger-Themen 4
J Übergabe einer ArrayList an mehrere Threads Java Basics - Anfänger-Themen 3
A konstruktor übergabe fehler Java Basics - Anfänger-Themen 8
E Übergabe von werten aus einem JDialog Java Basics - Anfänger-Themen 4
J Übergabe eines Arrays als Parameter Java Basics - Anfänger-Themen 2
G JFileChooser übergabe an Directory Java Basics - Anfänger-Themen 4
S Übergabe von Frame-Objekt - kritisch? Java Basics - Anfänger-Themen 7
L JTabbedPane, richtige Übergabe von Tabs Java Basics - Anfänger-Themen 18
Z BigInteger Methoden und deren Übergabe Java Basics - Anfänger-Themen 3
G Wieso ist eine String-Übergabe keine by-reference-Zuweisung? Java Basics - Anfänger-Themen 7
M Problem bei der Übergabe von Werten Java Basics - Anfänger-Themen 7
G Übergabe von Parametern an JSP Java Basics - Anfänger-Themen 3
S Veränderung von Protected Daten durch Übergabe? Java Basics - Anfänger-Themen 3
K Übergabe der Variable für Farbe Java Basics - Anfänger-Themen 6
G List<.> nach Übergabe vergleichen? Java Basics - Anfänger-Themen 3
M [SOLVED]parameter übergabe an objekte Java Basics - Anfänger-Themen 2
R Beiß mir die Zähne aus an der Request-Parameter-Übergabe! Java Basics - Anfänger-Themen 10
lin Übergabe an JPanel-Klasse Java Basics - Anfänger-Themen 3
S NullPointerException bei Array-Übergabe Java Basics - Anfänger-Themen 3
Z übergabe von string[] an konstruktoren oder methoden Java Basics - Anfänger-Themen 3
W Variabeln Übergabe Java Basics - Anfänger-Themen 14
W übergabe des aktuellen wertes in andere Klasse Java Basics - Anfänger-Themen 3
F Großes Problem: Vector-Übergabe Java Basics - Anfänger-Themen 7
F Übergabe Vaterframe mit this und Fehlermeldung. Java Basics - Anfänger-Themen 2
D Fragen zu Methoden und Übergabe von Werten Java Basics - Anfänger-Themen 4
G Übergabe von Variablenwerten zwischen Methoden Java Basics - Anfänger-Themen 4
D Problem bei Übergabe von Werten an eine Methode Java Basics - Anfänger-Themen 2
H Übergabe eines Wertes an eine Bean --> Bean leer Java Basics - Anfänger-Themen 6
T Array-Übergabe Java Basics - Anfänger-Themen 7
M Windows Pfad-Übergabe.. Java Basics - Anfänger-Themen 6
S String mit Konstruktor (per Übergabe) initialisieren Java Basics - Anfänger-Themen 10
N Variable aus anderen Variablen in statischer Klasse berechnen/abspeichern? Java Basics - Anfänger-Themen 4
M Wie kann ich bei int-Variablen im exception handler auf bestimmte Strings reagieren? Java Basics - Anfänger-Themen 5
M Warum dürfen Objekte einer Klasse auf statische Variablen dieser Klasse referenzieren? Java Basics - Anfänger-Themen 10
B Variablen Variablen übertragen ohne Klassen Java Basics - Anfänger-Themen 5
B Methoden Methoden haben kein Zugriff auf variablen Java Basics - Anfänger-Themen 4
T Java Swing - Dreieck zeichnen mit verschiedenen Variablen Java Basics - Anfänger-Themen 8
Arif Vererbung Methodenvererbung mit finalen Variablen Java Basics - Anfänger-Themen 1
M Wie kann ich ein Objekt erstellen, wenn sich der Klassenname in einer Variablen befindet? Java Basics - Anfänger-Themen 10
S Variablen Variablen in einer Schleife erstellen lassen Java Basics - Anfänger-Themen 11
J Ich brauche Hilfe bei einem Code (Variablen speichern) Java Basics - Anfänger-Themen 29
F Variablen Werte einer Klasse überschreiben Java Basics - Anfänger-Themen 4
N Speichern von Werten in Variablen nach Schließen des Programms Java Basics - Anfänger-Themen 3
J Frage dazu Variablen klassenübergreifend zu verändern Java Basics - Anfänger-Themen 22
M Java Instanz-Variablen ? Java Basics - Anfänger-Themen 3
B Variablen von Methoden übertragen Java Basics - Anfänger-Themen 2
M Variablen umbenennen Java Basics - Anfänger-Themen 1
T Körper Brechnung - Lokale Variablen in Methoden übergeben Java Basics - Anfänger-Themen 10

Ähnliche Java Themen

Anzeige

Neue Themen


Oben