ArrayList - использовать @override в методе toString()

ArrayList объектов требует, чтобы вывод был в нужном формате, поэтому возникает необходимость модифицировать родительский метод класса Object, не забыв указать, что этот класс наследуется с помощью ключевого слова  @override.

У нас есть два класса, Point и Main. Класс Point имеет 2 атрибута: x и y. Как видите, мы использовали ключевое слово override  В методе  toString()  в основном классе. Мы также сохранили экземпляры точечного объекта в ArrayList, а затем прошлись по ArrayList. Вы можете видеть, что выходные данные принимают формат, определенный в методе. toString(). Вы можете запрограммировать этот метод по мере необходимости.

public class Point {
private int x;
private int y;

public Point(int x, int y){
this.x=x;
this.y=y;
}

@Override
public String toString() {
return "[x= "+this.x+", y= "+this.y+"]";
}
}
Основной класс:

import java.util.ArrayList; 

public class Main {

public static void main(String[] args) {
ArrayList< Пункт> list = новый ArrayList< Пункт> ()
{
private static final long serialVersionUID = 1L;

@Override
public String toString()
{
return super.toString();
}
};
list.add(new Point(2, 4));
list.add(new Point(1, 6));
list.add(new Point(5, 2));
list.add(new Point(3, 7));
list.add(new Point(8, 9));

System.out.println(list.toString());
}
}
Run:

[[x= 2, y= 4], [x= 1, y= 6], [x= 5, y= 2], [x= 3, y= 7], [x= 8, y= 9]]
В этом примере ArrayList использует метод  toString()  объявлен в классе Point. Если мы удалим метод  toString()  в классе Point мы будем иметь следующий формат:

[Point@4a5f634c, Point@3c7038b9, Point@6b9c18ae, Point@55187eb3, Point@3b26456a]