Hi @ all,
lerne seit gestern Java mit BlueJ nach dem Tutorial von http://www.u-helmich.de/inf/BlueJ/kurs11/index.html.
Das aktuelle kleine Projekt ist ein Auto... http://www.u-helmich.de/inf/BlueJ/ku...n/seite04.html.


Hier mal der aktuelle Code, nur Attribute und Konstruktoren...
Code:
public class Auto
{
//Attribute
    private double tankvolumen, benzinstand;
    private double verbrauch, kmstand;
    
  
    
//Konstruktoren
    public Auto()
    {
       tankvolumen = 70.0; // l
       benzinstand = 50.0; // l
       verbrauch   = 8.6;  // l/100km
       kmstand     =77000;// km
       
    }
    
    public Auto (double tv, double bst, double verb, double km)
    {
        tankvolumen =  tv;
        benzinstand =  bst;
        verbrauch  =  verb;
        kmstand     =  km;
    }
        
    
}


Jetzt zum Prioblem bei den Methoden, das ist Übung 4.1, ca. auf der Hälfte der Seite.


Code:

    public void tanken(double liter)
    {
        benzinstand = benzinstand + liter;
        
    }
    
    public void anzeigen ()
    {
        System.out.println("Tankvolumen = "+tankvolumen+" Liter");
        System.out.println("Benzinstand = "+benzinstand+" Liter");
        System.out.println("Verbrauch = "+verbrauch +" Liter/100km");
        System.out.println("km-Stand = "+kmstand +"km");
    }

Diese zwei Fragen kann ich nicht beantworten...
a) Warum ist die Methode noch fehlerhaft; was könnte man besser machen? (1 Punkt)
b) Verbessern Sie die Methode entsprechend! (2 Punkte)





Dann zu meinen fragen:

1) zur methode anzeigen
was bedeuten die "+" vor kmstand , also bei System.out.println("km-Stand = "+kmstand +"km"); :?:
Ich hätte geschrieben "System.out.pintln("km-Stand" = "kmstand + km")




2) zur methode Tanken


Die stimmt doch nicht, denn x = x + y ist ja auch nicht ganz richtig :-)
[x = benzinstand / y = liter]



Deshalb würde ich das so schreiben:

public void tanken(double liter, double newbenzinstand)
{
newbenzinstand = benzinstand + liter;

}

---> Beim testen fällt mir jedoch dann auf, dann muss man ja den Endbenzinstand auch eingeben ?!



LG
Danke!