Student是Person的子类, Student向上转型为Person, Student这个类里面有study()和Iiintroduce()两个方法,为什么Person的对象p只能调用study,不能调用introduce? (疑问也可见注释部分),,大神help!!! 代码如下:class Test {
public static void main(String[] args) {
Student s = new Student();
Person p = s;
p.name = "张山";
p.age = 20;
p.study(); //p这个引用为什么不能调用它所指向的对象的方法?
p.introduce(); //同样是p所指向的对象,introduce这个方法却可以被p调用?
}
}
class Person {
String name;
int age;
void introduce() {
System.out.println("我的姓名是" + name + ",我的年龄是" + age);
}
}
class Student extends Person {
String address;
void study() {
System.out.println("我正在学习");
}
void introduce() {
super.introduce();
System.out.println("我的家在" + address);
}
}
|
|