代码如下:
class Extends_Person {
public static void main(String[] args) {
Student x = new Student("张三",23);
x.eat();
x.study();
System.out.println(x.getName() + x.getAge());
final int X = 10000;
Teacher y = new Teacher();
y.setName("涂老师");
y.setAge(X);
System.out.println(y.getName() + "可以活到" + y.getAge());
y.eat();
y.teach();
}
}
class Person {
private String name;
private int age;
public Person() {}
public Person(String name,int age) {
this.name = name;
this.age = age;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
public void eat() {
System.out.println(name + "吃饭");
}
}
class Student extends Person {
public Student() {}
public Student(String name,int age) {
super(name,age);
}
public void study() { //学习
System.out.println(super.name + "喜欢学习");
}
}
class Teacher extends Person {
public Teacher() {}
public Teacher(String name,int age) {
super(name,age);
}
public void teach() {
System.out.println(super.age + "老师is a very good teacher");
}
}
编译器报错 : Extends_Person.java:58: 错误: name可以在Person中访问private
子类不能继承父类的私有属性,这我知道了
我记得上课说可以用super访问父类的成员,为什么一直不可以?求大神解释
|
|