Massimo Caliman
by Massimo Caliman
1 min read


  • Java

The toString method is a fundamental method of the Object class in Java. This method returns a textual representation of the object.

To use the toString method correctly, it is important to follow some rules. First, the toString method must be appropriately overridden in subclasses. Additionally, the textual representation returned by the toString method should be clear and useful for understanding the state of the object.

If the toString method is not overridden in a subclass, its default implementation in the Object class will return a string representing the name of the object’s class followed by the @ symbol and the object’s hash code in hexadecimal.

Here is an example of how to override the toString method in a subclass:

public class Human {
    private String firstName;
    private String lastName;
    private String passportNumber;

    public Human(String firstName, String lastName, String passportNumber) {
        this.firstName = firstName;
        this.lastName = lastName;
        this.passportNumber = passportNumber;

    public String toString() {
        return "Human{" +
                "firstName='" + firstName + '\'' +
                ", lastName='" + lastName + '\'' +
                ", passportNumber='" + passportNumber + '\'' +

In this example, we have overridden the toString method in the Human class to return a textual representation of a Human object that includes its firstName, lastName, and passportNumber attributes.

Always remember to override the toString method, it costs little and can help you with debugging and logging!