Referenz auf ein Objekt drucken [duplizieren]

7

Ich bin ein Neuling in Java. Sagen wir, ich habe eine Klasse Individuell . Ich möchte drucken

%Vor%

Der obige Code gibt eine Ausgabe wie folgt aus:

%Vor%
  1. Was ist das für eine Bedeutung?
  2. Ist es eine Art einzigartige ID? für dieses Objekt?
  3. Kann ich das anpassen? Ich meine, schreibe eine Funktion von mein eigenes, das Ausgabe gibt, wenn ich drucke?
  4. Wenn ja, wie kann ich es tun? das?
user 04.01.2012, 16:20
quelle

4 Antworten

10

Wenn Sie einen sinnvollen Inhalt eines Objekts drucken möchten, müssen Sie Ihre eigene Methode toString() implementieren, die die Methode Object der übergeordneten Klasse ( toString() ) überschreibt. Standardmäßig erweitern alle Klassen (was auch immer Sie erstellen) Object class.

Beispielcode:

%Vor%

Ausgabe:

%Vor%

Wenn Sie eine größere Klasse mit vielen Variablen haben, können Sie XStream verwenden, um Ihre Methode toString () zu implementieren. XStream wird Ihr Objekt im XML-Format sinnvoll ausgeben. Selbst Sie können sie zurück auf äquivalente Objekte analysieren. Hoffe, das würde dir helfen.

    
Ahamed 04.01.2012, 16:23
quelle
7

Dies ist das Ergebnis der standard toString () Methode - der Klassenname + Hashcode. Dies kann überschrieben werden, indem toString () überschrieben wird.

Einige Referenzen hier: Ссылка

    
Jan Zyka 04.01.2012 16:22
quelle
2

Da dies noch nicht erklärt wurde, bedeutet das Überschreiben der toString () -Methode einfach, dass Sie in Ihrer Klasse eine eigene toString () -Methode erstellen. Indem Sie Ihre eigene Version von toString () in Ihre Klasse einfügen, machen Sie es so, dass Java Ihre toString () -Methode und nicht die Standardmethode verwendet. Da die ursprüngliche Methode toString () jedoch eine Zeichenfolge zurückgibt, muss Ihre toString () -Methode auch eine Zeichenfolge zurückgeben. Ihre Individualklasse würde etwa so aussehen:

%Vor%

Dann, wenn Sie Ihre System.out.print (ind) aufgerufen haben; Es würde Ihre Zeichenfolge ausdrucken.

    
paul jerman 04.01.2012 16:31
quelle
1

Ich denke, du möchtest Individual toString überschreiben. Siehe Ссылка ()

    
Kosta 04.01.2012 16:22
quelle

Tags und Links