Cada clase en Java es un elemento secundario de la clase Object, ya sea directa o indirectamente. toString() está presente en la clase Object . El método toString devuelve una representación de string de un objeto. El toString() se puede anular como parte de una clase para satisfacer las necesidades personalizadas del usuario. Cada vez que intentamos imprimir la referencia del objeto, se invoca internamente el método toString(). Si no definimos el método toString() en su clase, entonces se invoca el método toString() de la clase Object; de lo contrario, se llamará a nuestro método toString() implementado/anulado.
Sintaxis de la clase de objeto toString() Método:
public String toString() { return getClass().getName()+"@"+Integer.toHexString(hashCode()); }
Devoluciones: el método devuelve una string.
Ejemplo:
Java
// Java program to demonstrate // how to override toString // method for ArrayList import java.util.ArrayList; // define a class class Employee { // attributes of an Employee private String EmployeeName; private int EmployeeId; private double EmployeeSalary; // Create Constructor that accept // name id and salary as // an argument Employee(String name, int id, double salary) { this.EmployeeSalary = salary; this.EmployeeName = name; this.EmployeeId = id; } // Override toString() // provide your own implementation public String toString() { return " Employee Name = " + this.EmployeeName + " Employee Id = " + this.EmployeeId + " Employee Salary = " + this.EmployeeSalary; } } public class GFG { public static void main(String[] args) { // Create a ArrayList of Employee Class Type ArrayList<Employee> ArrList = new ArrayList<Employee>(); ArrList.add(new Employee("Mukul", 1001, 52000.0)); ArrList.add(new Employee("Robin", 1002, 65000.0)); ArrList.add(new Employee("Rahul", 1003, 53000.0)); ArrList.add(new Employee("Suraj", 1004, 45000.0)); ArrList.add(new Employee("Akash", 1005, 38000.0)); // When an object is tried to print // toString() method is called for (Employee t : ArrList) { System.out.println(t); } } }
Employee Name = Mukul Employee Id = 1001 Employee Salary = 52000.0 Employee Name = Robin Employee Id = 1002 Employee Salary = 65000.0 Employee Name = Rahul Employee Id = 1003 Employee Salary = 53000.0 Employee Name = Suraj Employee Id = 1004 Employee Salary = 45000.0 Employee Name = Akash Employee Id = 1005 Employee Salary = 38000.0
Explicación: cuando tratamos de imprimir la instancia del empleado, se llama al método toString() que se anula y se imprime el valor de la string.