Java Language método toString ()


Ejemplo

El método toString() se usa para crear una representación de String de un objeto utilizando el contenido del objeto. Este método debe ser anulado al escribir su clase. toString() se llama implícitamente cuando un objeto se concatena a una cadena como en "hello " + anObject .

Considera lo siguiente:

public class User {
    private String firstName;
    private String lastName;
    
    public User(String firstName, String lastName) {
        this.firstName = firstName;
        this.lastName = lastName;
    }
    
    @Override
    public String toString() {
        return firstName + " " + lastName;
    }
    
    public static void main(String[] args) {
        User user = new User("John", "Doe");
        System.out.println(user.toString()); // Prints "John Doe"
    }   
}

Aquí toString() de la clase Object se reemplaza en la clase User para proporcionar datos significativos sobre el objeto al imprimirlo.

Cuando se utiliza println() , el método toString() del objeto se llama implícitamente. Por lo tanto, estas declaraciones hacen lo mismo:

System.out.println(user); // toString() is implicitly called on `user`
System.out.println(user.toString());

Si el toString() no se reemplaza en la clase de User mencionada anteriormente, System.out.println(user) puede devolver User@659e0bfd o una cadena similar casi sin información útil, excepto el nombre de la clase. Esto se debe a que la llamada usará la implementación toString() de la clase de Object Java base que no sabe nada sobre la estructura de la clase de User o las reglas de negocios. Si desea cambiar esta funcionalidad en su clase, simplemente anule el método.