Какая связь между System.out.println()
и toString()
в Java? например:
public class A {
String x = "abc";
public String toString() {
return x;
}
}
public class ADemo {
public static void main(String[] args) {
A obj = new A();
System.out.println(obj);
}
}
Если основной класс работает, он выводит как "abc"
. Когда я удаляю код, который переопределяет toString()
, он выводит как "[email protected]"
. Итак, может ли кто-нибудь объяснить, каков принцип работы System.out.println()
когда я obj
ссылку на obj
в качестве аргумента? Это полностью связано с методом toString()
?