Cel przesłaniania metody toString () w Javie

Jaki jest cel toString() metoda w Javie?

Jeśli chcemy przedstawić obiekt klasy jako String, możemy użyć toString() metoda, która zwraca tekstową reprezentację obiektu.

Podczas drukowania obiektu domyślnie kompilator języka Java wywołuje funkcję toString() metoda na obiekcie. Czyli zastępując toString() metoda, możemy zapewnić znaczące wyniki.


Zobaczmy tę koncepcję w następującym przykładzie:



Przesłanianie metody toString ()

package io.devqa.tutorials; public class ToStringExample {
private String firstName;
private String lastName;
private String email;
public ToStringExample() {
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append('First name : ').append(this.firstName).append(' ');
sb.append('Last name : ').append(this.lastName).append(' ');
sb.append('Email : ').append(this.email).append(' ');
return sb.toString();
}
public static void main(String args[]) {
ToStringExample example = new ToStringExample();
example.setFirstName('Testing');
example.setLastName('Tester');
example.setEmail('testing@tester.com');

System.out.println(example);
} }

Powyższy kod generuje następujące informacje:


First name : Testing Last name : Tester Email : testing@tester.com

Gdybyśmy nie zastąpili toString() metoda, wynik byłby

io.devqa.tutorials.ToStringExample@60e53b93

Jak widać, nadpisując toString() możemy wyprowadzić sensowną prezentację obiektu.