Arrays.toString(students)是怎么调用Student类中重写的toString方法
public class Student {
private String name;
private int age;
private Double height;
public Student() {
}
public Student(String name, int age, Double height) {
this.name = name;
this.age = age;
this.height = height;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Double getHeight() {
return height;
}
public void setHeight(Double height) {
this.height = height;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
", height=" + height +
'}';
}
}
public class ArrayTest4 {
public static void main(String[] args) {
Student[] students=new Student[3];
students[0]=new Student("张三",19,178.0);
students[1]=new Student("李四",20,180.5);
students[2]=new Student("王五",17,169.8);
String student=Arrays.toString(students);
System.out.println(student);
}
}
我一直搞不明白Arrays.toString(students)是怎么调用Student类中重写的toString方法,Arrays.toString()不是调用Arrays中的toString吗?