Вопрос по задаче: Как работает этот метод?
@Override
public String toString() {
        return "Ментор по имени - " + name;
    }
Он приводит информацию к строковому представлению, иначе программа возвращает список объектов в таком виде:
com.javarush.task.pro.task18.task1803.JavaRushMentor@72ea2f77
Я не могу понять, где он вызывается, то есть для чего метод, я понял, а как именно он взаимодействует внутри кода и где он вызывается, не понимаю. Прошу помощи пояснительной бригады. Полная картина:
public class JavaRushMentor {
    private String name;

    public JavaRushMentor(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    @Override
    public String toString() {
        return "Ментор по имени - " + name;
    }
}
import java.util.ArrayList;
import java.util.Collections;

public class Solution {
    public static ArrayList<JavaRushMentor> mentors = new ArrayList<>();

    public static void main(String[] args) {
        Collections.addAll(mentors,
                new JavaRushMentor("Джон Бобров"),
                new JavaRushMentor("Риша"),
                new JavaRushMentor("Эллеонора Керри"),
                new JavaRushMentor("Ханс Нудлс"),
                new JavaRushMentor("Ким"),
                new JavaRushMentor("Хулио Сиеста"),
                new JavaRushMentor("Диего"),
                new JavaRushMentor("Лага Билаабо")
        );

        Collections.sort(mentors, new NameComparator());

        for (JavaRushMentor mentor : mentors) {
            System.out.println(mentor);
        }
    }
}

Спасибо!