Given the following code, find the compile error?
public class Test {
public static void main(String[] args) {
m(new GraduateStudent());
m(new Student());
m(new Person());
m(new Object());
}
public static void m(Student x) {
System.out.println(x.toString());
}
}
class GraduateStudent extends Student {
}
class Student extends Person {
public String toString() {
return "Student";
}
}
class Person extends Object {
public String toString() {
return "Person";
}
}
A. m(new GraduateStudent()) causes an error
B. m(new Student()) causes an errorC. m(new Person()) causes an error
D. m(new Object()) causes an error
The correct answer is CD