Bei Ausgaben von Objekten wird Klassenname@Zahl ausgegeben

Status
Nicht offen für weitere Antworten.

Sab

Mitglied
Ich habe die Aufgabe, eine Vererbungshierarchie zu implementieren mit der Superklasse Fahrzeug, von der Motorfahrzeug und davon wiederum Motorrad abgeleitet wird.
Motorrad hat die Variablen von Motorfahrzeug und Fahrzeug und eigene.
In einer Testklasse soll ich eine Ausgabe schreiben, die alle Eigenschaften von Motorrad (und den Superklassen) ausgibt und zwar mit

Code:
Motorrad m=new Motorrad(4); //Eigenschaft: Radanzahl=4
System.out.println(m);
Im Dos-Fenster wird aber immer
Motorrad: Motorrad@13214 Radanzahl: 4
ausgegeben.

Woran liegt das und wie kann ich dieses Motorrad@13214 entfernen?

Vielen Dank.
 

bummerland

Top Contributor
die zahl hinter dem @ ist meiner meinung die adresse im speicher des objekts. was genau willst du denn ausgeben? du must dann die Methode toString() überschreiben, um eine repräsentation des objekts zurückzuliefern.
 

Sab

Mitglied
Danke!!! Das hört sich genau nach der Problemlösung an.
Ich möchte bei dem Programm hier eigentlich nur eine einfache Ausgabe erzeugen, die die Eigenschaften des Objekts enthält, also die Variablen, und ihre Beispielbelegung im Testprogramm. Z.B.

Motorrad:
Radanzahl: 4

sollte dann im Dosfenster erscheinen.
toString() hab ich in den Superklassen und in Motorrad auch verwendet, aber ich habe leider keine Ahnung, wie man das überschreibt. Ich wäre sehr dankbar für eine kurze Erklärung.
 

Sab

Mitglied
// Das ist allerdings ein ziemlich langer und wahrscheinlich auch umständlicher Code... Ein paar unwichtige Sachen hab ich rausgelöscht, ich hoffe, das ganze funktioniert trotzdem noch ohne Compilerfehler, aber sonst wäre der Code noch ein Stück länger geworden.
Vielen Dank, falls jemand sich das anschaut.


Code:
abstract public class Fahrzeug1{
	//Hierbei handelt es sich um die Superklasse.
	
	private int anzahlSitze; 
	private int anzahlRaeder;
	private String typBezeichnung;
	
	public Fahrzeug1(int sitze, int raeder, String bez){
		anzahlSitze=sitze;
		anzahlRaeder=raeder;
		typBezeichnung=bez;
	}
		
	void setanzahlSitze(int aS){
		anzahlSitze=aS;
	}
	
	void setanzahlRaeder(int aR){
		anzahlRaeder=aR;
	}
	
	void settypBezeichnung(int tB){
		anzahlSitze=tB;
	}


	int getanzahlSitze(){
		return anzahlSitze;
	}
	
	int getanzahlRaeder(){
		return anzahlRaeder;
	}
	
	
	String gettypBezeichnung(){
		return typBezeichnung;
	}
}
---------------
Code:
abstract public class Motorfahrzeug1 extends Fahrzeug1{
		
	//Motorfahrzeug1 ist eine Subklasse von Fahrzeug1
	
	private double antriebsLeistung;//in KW 
	private double hoechstGeschwindigkeit;//in km/h 
	private double beschleunigungsZeit;//in sec
		
	 
	public Motorfahrzeug1(int sitze, int raeder, String bez, 
	double leistung, double geschwindigkeit, 
	double beschleunigung){
		super(sitze, raeder, bez);
		antriebsLeistung=leistung;
		hoechstGeschwindigkeit=geschwindigkeit;
		beschleunigungsZeit=beschleunigung;
		}
	
	void setantriebsLeistung(double aL){
		antriebsLeistung=aL;
	}
	
	void sethoechstGeschwindigkeit(double hG){
		hoechstGeschwindigkeit=hG;
	}
	
	void setbeschleunigungsZeit(double bZ){
		beschleunigungsZeit=bZ;
	}
	
	double getantriebsLeistung(){
		return antriebsLeistung;
	}
	
	double gethoechstGeschwindigkeit(){
		return hoechstGeschwindigkeit;
	}
	
	double getbeschleunigungsZeit(){
		return beschleunigungsZeit;
	}
	
	
	
	
	public String toString(){
	return super.toString()+"\n Sitzanzahl: "+getanzahlSitze()+"\n Anzahl der Raeder: "+getanzahlRaeder()
	+"\n Typ: "+gettypBezeichnung()+"\n Antriebsleistung: "+getantriebsLeistung()+"\n  Hoechstgeschwindigkeit: "
	+gethoechstGeschwindigkeit()+"\n Beschleunigungszeit: "+getbeschleunigungsZeit
	}
}
-----------
Code:
public class Motorrad1 extends Motorfahrzeug1{
	
	
	//Subklasse von Motorfahrzeug1
	
	private String fuehrerSchein;
	
	public Motorrad1(int sitze, int raeder, String bez, double leistung, double geschwindigkeit, 
	double beschleunigung, String fuehrerSchein){
		super(sitze, raeder, bez, leistung, geschwindigkeit, beschleunigung);
		this.fuehrerSchein=fuehrerSchein;		
	}
	
	 
	public String toString(){
	return super.toString()+"\n Fuehrerschein: "+fuehrerSchein;
	}
}
---------
Code:
public class Demofahrzeuge1{
	//Testklasse
	
	public static void main(String[] args){
			
		Motorrad1 m=new Motorrad1(2, 2, "Harley Davidson", 10, 99, 5, "Ja");
						
		System.out.println("Motorrad: "+m);
		System.out.println();
	}	
}
 

Sab

Mitglied
Bei der Ausgabe von der Klasse Demofahrzeuge1. Keine Ahnung, warum die Speicheradresse ausgegeben wird und nicht das Objekt, aber mit
System.out.println("Motorrad: "+m.toString());

in Demofahrzeuge1 gehts auch nicht.
 

mariopetr

Bekanntes Mitglied
hast du denn toString ueberschrieben
Sysout(""+instance) ist sonst das selbe wie Sysout(instance.toString()) da die vm bei object nunmal die toString methode (ist in Object definiert) aufruft
 

Ebenius

Top Contributor
Also ganz einfach:

:arrow: Motorrad1.toString() ruft super.toString(), also Motorfahrzeug1.toString() auf.
:arrow: Motorfahrzeug1.toString() ruft super.toString(), also Object.toString() auf.

:arrow: Object.toString() returns
Code:
Motorrad1@xxxxxxxxx  -->  [getClass().getName() + '@' + Integer.toHexString(hashCode())]
:arrow: Motorfahrzeug1.toString() returns
Code:
Motorrad1@xxxxxxxxx" + "\n Sitzanzahl: ..."
:arrow: Motorrad1.toString() returns
Code:
"Motorrad1@xxxxxxxxx" + "\n Sitzanzahl: ..." + "\n Fuehrerschein: ..."

Damit ergibt sich eine Standard-Ausgabe von
Code:
Motorrad1@xxxxxxxxx
 Sitzanzahl: ...
...
...
...
 Fuehrerschein: ...

Erklärts das?

Es grüßt Ebenius
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Wie kommen diese Ausgaben zustande? Java Basics - Anfänger-Themen 12
K Ausgaben auf der Konsole (static Varible) Java Basics - Anfänger-Themen 9
B Grundsatzfragen zu meinem neuen Projekt Einnahmen-Ausgaben App Java Basics - Anfänger-Themen 8
A Wieso bekomme ich hier zwei unterschiedliche Ausgaben? Java Basics - Anfänger-Themen 6
S Ein- Ausgaben Java [Hilfe] Java Basics - Anfänger-Themen 3
M Verschiedene Eingabe = Verschiedene Ausgaben Java Basics - Anfänger-Themen 5
J Erste Schritte Alle möglichen ausgaben von 5 Zahlen als Vector Java Basics - Anfänger-Themen 7
D Methoden Eigene Methode um alle Ausgaben aufzurufen Java Basics - Anfänger-Themen 17
ralfb1105 Ausgaben von ProcessBuilder Prozess "streamen" Java Basics - Anfänger-Themen 25
C Vererbung - Ausgaben bestimmen Java Basics - Anfänger-Themen 6
O Wie Log4J - Ausgaben/Events auffangen?! Java Basics - Anfänger-Themen 3
J ausgaben von der konsole in das fenster Java Basics - Anfänger-Themen 5
W Array in String und String in Array - falsche Ausgaben Java Basics - Anfänger-Themen 20
S write(), weshalb verschiedene Ausgaben? Java Basics - Anfänger-Themen 4
V Personenverwaltung mit List<>, falsche Ausgaben Java Basics - Anfänger-Themen 5
Z GUI-Ausgaben. Java Basics - Anfänger-Themen 11
G Wie bekomme ich alle Ausgaben von runTime.exec() Java Basics - Anfänger-Themen 7
C Erste Schritte Boolsche For-Schleife soll Ausgaben mitzählen Java Basics - Anfänger-Themen 8
W Ausgaben in JAVA Java Basics - Anfänger-Themen 7
J Eclipse Console Ausgaben Abfangen Java Basics - Anfänger-Themen 2
H Mysteriöse Ausgaben nach Addition Java Basics - Anfänger-Themen 5
D Methoden und Ausgaben Java Basics - Anfänger-Themen 4
A [gelöst]Zwei Ausgaben, die eigentlich gleich sein sollten Java Basics - Anfänger-Themen 9
S Hilfe bei Ausgaben durch Konsolenprogramm Java Basics - Anfänger-Themen 13
Screen Verzögerung zwischen Ausgaben Java Basics - Anfänger-Themen 5
O 2 Ausgaben, aber nur 1 gewollt. Java Basics - Anfänger-Themen 10
J Verschiedene Ausgaben bei gleichen Ausdrücken (Typecasting?) Java Basics - Anfänger-Themen 5
G Farbige / unterstrichene Ausgaben auf der Konsole! Java Basics - Anfänger-Themen 2
G Erstellung von HTML Ausgaben Java Basics - Anfänger-Themen 5
F DOS Ausgaben einlesen Java Basics - Anfänger-Themen 14
S exe-Datei ausführen, Ausgaben einlesen? Java Basics - Anfänger-Themen 3
K String in JTextfield formatiert ausgaben Java Basics - Anfänger-Themen 5
R Ausgaben von externer .exe einlesen Java Basics - Anfänger-Themen 2
C Ausgaben mit der Paint-Methode Java Basics - Anfänger-Themen 5
D Array List mit Objekten sortieren Java Basics - Anfänger-Themen 2
T Kollision von 2 Objekten Java Basics - Anfänger-Themen 2
T Variable von Objekten in einer Methode überprüfen Java Basics - Anfänger-Themen 26
B Reflection ändern von Objekten in Objekten Java Basics - Anfänger-Themen 12
H Kompliziertes Sortieren einer ArrayList mit Objekten(Sortieren nach X und Y) Java Basics - Anfänger-Themen 11
T Permanentes speichern von Objekten in einer ArrayList Java Basics - Anfänger-Themen 6
N Vererbung Queue bestehend aus Superclass- und Subclass-Objekten Java Basics - Anfänger-Themen 7
B Compiler-Fehler Array aus Objekten übergeben Java Basics - Anfänger-Themen 7
YAZZ Schlüsselworte Töten von Objekten Gameover Java Basics - Anfänger-Themen 2
F Abstand zwischen zwei Objekten berechnen wie? Java Basics - Anfänger-Themen 1
districon Vergleichen von Objekten Java Basics - Anfänger-Themen 20
Zeppi OOP Array in Objekten Java Basics - Anfänger-Themen 4
LetsSebi Methode, die einen arry von objekten speichert in einer datei Java Basics - Anfänger-Themen 6
JavaNoobi Try and Catch und übergabe von Objekten Java Basics - Anfänger-Themen 2
A Klasse Menge mit Objekten der Klasse Person Java Basics - Anfänger-Themen 8
S Auf Array aus Objekten zugreifen? Java Basics - Anfänger-Themen 1
D Mit Objekten rechnen, Textfield, JavaFX, Noob Java Basics - Anfänger-Themen 8
N enum Attribut von Objekten einer Hashmap ausgeben Java Basics - Anfänger-Themen 6
A Auf Eigenschaften von Objekten anderer Klassen zugreifen Java Basics - Anfänger-Themen 5
G Problem beim Speichern von Objekten in einer Datei Java Basics - Anfänger-Themen 7
N Klassen Rekursion mit Feldern von Objekten Java Basics - Anfänger-Themen 14
D Operatoren Mit Objekten rechnen Java Basics - Anfänger-Themen 7
E Datentypen Einfügen von Objekten in eine Map Java Basics - Anfänger-Themen 2
S Pane nach speziellen Child Objekten durchsuchen Java Basics - Anfänger-Themen 3
B ID von unterschiedlichen Objekten bekommen? Java Basics - Anfänger-Themen 2
T Daten von Objekten speichern Java Basics - Anfänger-Themen 7
PaperHat Programmieraufgabe - Objekte in Objekten Java Basics - Anfänger-Themen 2
L Rechnen mit Objekten Java Basics - Anfänger-Themen 3
S werte von objekten in schleife verändern Java Basics - Anfänger-Themen 14
D Zusammenarbeit von Objekten Java Basics - Anfänger-Themen 1
Y Begrenzte Anzahl an Objekten? Java Basics - Anfänger-Themen 12
Kornblume Nulltyp eines Arrays von Objekten? Java Basics - Anfänger-Themen 10
A Frage zur Aufgabe Uhrzeit einstellen mit Objekten Java Basics - Anfänger-Themen 18
M Generische Liste aus Comparable-Objekten Java Basics - Anfänger-Themen 6
G Klassen Call by Value auch bei Objekten? Java Basics - Anfänger-Themen 2
R Verständnisfrage zu Objekten u. Übergabeparameter Java Basics - Anfänger-Themen 8
arjoopy Kapselung Übergabe von Objekten aus ArrayList Java Basics - Anfänger-Themen 4
schoenosrockos Unterschied zwischen Objekten und vererbungen Java Basics - Anfänger-Themen 1
M Speichern von Objekten - Verfügbarkeit bei erneutem Aufruf Java Basics - Anfänger-Themen 3
R Methoden Methode ruft Methode auf, ruft Methode auf (mit Objekten) Java Basics - Anfänger-Themen 4
S Serialisierung: Laden von Objekten - Risiken? Java Basics - Anfänger-Themen 4
Shizmo PriorityQueue mit Objekten Java Basics - Anfänger-Themen 10
E Instanzieren von Objekten verkürzen Java Basics - Anfänger-Themen 1
F Interaktion von Objekten verschiedener Klassen... Java Basics - Anfänger-Themen 13
D Effiziente Verwaltung der Objekten und Unterobjekten Java Basics - Anfänger-Themen 18
N Dauer zwischen zwei LocalDateTime Objekten berechnen? Java Basics - Anfänger-Themen 4
L Subklasse von ArrayList nur mit bestimmten Objekten füllen Java Basics - Anfänger-Themen 1
E Erste Schritte Gute Erklärung zu Objekten / Klassen / Methoden / Sichtbarkeiten auf Deutsch Java Basics - Anfänger-Themen 3
S Problem mit augabe von Objekten Java Basics - Anfänger-Themen 3
T Junit Mockito: Instanz von inneren erzeugten Objekten Java Basics - Anfänger-Themen 4
P Zugriff auf Felder in ArrayList Objekten Java Basics - Anfänger-Themen 2
W Was passiert mit Objekten die nicht in Objektvariablen initialisiert werden ? Java Basics - Anfänger-Themen 3
D Zugriff auf von einer anderen Klasse erstellten Objekten Java Basics - Anfänger-Themen 5
S Liste mit Objekten und Listen Java Basics - Anfänger-Themen 9
Y Gleiche Arrays aus einem Array mit Objekten Java Basics - Anfänger-Themen 5
K Min eines Arrays mit Objekten Java Basics - Anfänger-Themen 6
M Array mit Objekten lässt sich nicht auslesen Java Basics - Anfänger-Themen 10
T Statische Arrays von Objekten Java Basics - Anfänger-Themen 2
J Methoden Einfügen von Objekten nach Alphabet in ArrayList funktioniert nicht Java Basics - Anfänger-Themen 2
B Erste Schritte Anzeige von Graphics Objekten einzeln aktualisieren Java Basics - Anfänger-Themen 1
TheSorm Koordinaten von gedrehten Objekten Java Basics - Anfänger-Themen 4
D Bestimmte Werte von Objekten aus einer ArrayList in eine andere ArrayList kopieren Java Basics - Anfänger-Themen 14
B Aliasing bei null-Objekten Java Basics - Anfänger-Themen 3
O Java Erzeugung von neuen Objekten Java Basics - Anfänger-Themen 1
J Verständnisfragen zu dem Thema Objekten Java Basics - Anfänger-Themen 7
J Array von Objekten, wie schauts im Heap / Stack aus ? Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben