这是我现在正在测试的一段代码,我注意到当我在 Person 的 getInfo() 方法上将 public 更改为 private 时,Student().printPerson() 和 Person().printPerson () 打印出“人”。但是,当它公开时,会显示“学生”。有人可以解释一下吗?为什么 private 修饰符不允许 Student 访问 getInfo 方法?
new Student().printPerson();
new Person().printPerson();
}
}
class Student extends Person {
public Student(){
System.out.println("student invoked") ;
}
public String getInfo() {
return "Student";
}
}
class Person {
public Person(){
System.out.println("person invoked");
}
private String getInfo() {
return "Person";
}
public void printPerson() {
System.out.println(getInfo());
}