toString()
- это метод класса Object
, и этот класс является суперклассом всех классов (если вы создаете новый класс, который не расширяет другие классы, он будет неявно наследоваться от Object
класса. Помните, что Java делает не поддерживает множественное наследование, т.е. класс может иметь только один прямой суперкласс). Если вы переопределите toString()
в наследующем классе, тогда ваша реализация будет вызываться System.out.println()
неявно. Если вы не переопределите этот метод, также будет вызван toString()
, но с реализацией по умолчанию из класса Object
. И реализация по умолчанию Object::toString
возвращает:
Метод toString для класса Object возвращает строку, состоящую из имени класса, экземпляром которого является объект, символа знака «@» и шестнадцатеричного представления без знака хеш-кода объекта. Другими словами, этот метод возвращает строку, равную значению:
getClass (). getName () + '@' + Integer.toHexString (hashCode ())