У меня есть класс, определяемый следующим образом:
public class Person {
  private String name;
  // constructor and getter/setter omitted
}
Я попытался напечатать экземпляр моего класса:
System.out.println(myPerson);
 но я получил следующий вывод: [email protected].
Аналогичная ситуация произошла, когда я попытался напечатать массив объектов Person:
Person[] people = //...
System.out.println(people); 
Я получил результат: [Lcom.foo.Person;@28a418fc
Что означает этот вывод? Как изменить этот вывод, чтобы он содержал имя моего лица? И как мне печатать коллекции моих объектов?
Примечание: это предполагается каноническим Q & A об этом предмете.
