Переопределенный метод toString ни где явно не вызывается, но текст печатается. Что за магия? Понятно что вызывается он где-то в строчке System.out.println(Matrix.NEO); но как это работает? Что почитать?