Hallo, ich habe hier eine einfache Klasse. Ich möchte in meiner Klasse Auto eine Methode schreiben (isFasterThan), das ein Auto übernimmt und die Geschwindigkeit des übergebenen Autos mit dem aktuellen vergleichen. Wenn das aufgerufene Auto Objekt einen größeren Wert hat, soll meine Methode true zurückgeben. Jedoch funktionier meine Methode nicht, es gibt mir ständig false zurück. Kann mir da jemand weiterhelfen? Ich habe die Klasse A und die Klasse Auto teilweise reimkopiert (das nötigste). Danke falls mir jemand weiterhelfen kann !
Java:
publicclassA{publicstaticvoidmain(String[] args){Auto a =newAuto();Auto b =newAuto();
b.repaint("Schwarz");
b.schneller(350);System.out.println(a.toString());System.out.println(b.toString());System.out.println( a.isFasterThan(b));}}
Doch die habe ich schon ausgetestet es funktioniert. Ich glaube das Problem liegt daran das ich ein Objekt mit einer Instanzvariable vergleiche, aber ich wüsste nicht wie ich es anders machen soll. Ich erhöhe mit der Methode schneller die Geschwindigkeit von b und möchte es dann mit a vergleichen,
Also der Vergleich sieht richtig aus - nur eben kannst Du es deutlich kürzer schreiben: if (bedingung) return true; else return false; ist das Gleiche wie einfach ein return bedingung:
Wir sehen zu wenig Code. Wo setzt du die Höchstgeschwindigkeit? Wenn du weder in a noch in b die Höchstgeschwindigkeit setzt, sind diese Gleich (und damit ist die von a nicht größer als die von b)
Also der Vergleich sieht richtig aus - nur eben kannst Du es deutlich kürzer schreiben: if (bedingung) return true; else return false; ist das Gleiche wie einfach ein return bedingung:
Wir sehen zu wenig Code. Wo setzt du die Höchstgeschwindigkeit? Wenn du weder in a noch in b die Höchstgeschwindigkeit setzt, sind diese Gleich (und damit ist die von a nicht größer als die von b)
Du hattest mal Car & mal Auto da stehen. Das spricht dafür das dein Code hier im Forum und der in deiner IDE nicht identisch waren.
Hast du vielleicht noch mehr Klassen die zufällig auch Car oder Auto heißen da rumliegen?
An sich funktioniert jetzt - das ist jetzt wirklich nur Copy & Paste deines Codes gewesen. Was kam den bei dir als Ausgabe?
Du hattest mal Car & mal Auto da stehen. Das spricht dafür das dein Code hier im Forum und der in deiner IDE nicht identisch waren.
Hast du vielleicht noch mehr Klassen die zufällig auch Car oder Auto heißen da rumliegen?
An sich funktioniert jetzt - das ist jetzt wirklich nur Copy & Paste deines Codes gewesen. Was kam den bei dir als Ausgabe?
Ja das kann sein, da ich mehrere Applikationen habe und rumteste, ist ein ziemlicher Spaghetti Code geworden.. Es wundert mich aber trotzdem da ich auf die Namen eigentlich geachtet hatte. Naja jetzt funktioniert es aufjedenfall. Danke nochmals!