问题遇到的现象和发生背景
今天做练习引用类型数组,发现一个有意思的事儿,我想不明白,前来求解,为什么主函数没调用toString(),输出结果却是toString()形式
问题相关代码,请勿粘贴截图
public class Test {
public static void main(String[] args) {
Person[] people = new Person[3];
String[] names = {"徐凤年", "李淳罡", "王仙芝"};
int[] ages = {25, 35, 55};
int[] height = {180, 188, 175};
for (int i = 0; i < people.length; i++) {
people[i] = new Person();
people[i].name = names[i];
people[i].age = ages[i];
people[i].height = height[i];
}
for (Person p : people) {
System.out.println(p);
}
}
}
class Person {
public String name;
public int age;
public int height;
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
", height=" + height +
'}';
}
}
运行结果及报错内容
