在父类中访问子类的成员变量
public class Father {
private String father;
public Father() {
Field fs[] = this.getClass().getDeclaredFields();
for (int i = 0; i < fs.length; i++) {
Field f = fs[i];
System.out.println(f.getType().getName() + " " + f.getName());
}
}
}
public class Son extends Father {
private int age;
private String name;
public Son() {
super();
// TODO Auto-generated constructor stub
}
}
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Son son = new Son();
}
}
这个是打印结果:
int age
java.lang.String name
请重点分析Father的构造方法this变量,解释一下打印出来的为什么是上面的结果?
我觉得的结果是:
java.lang.String name
...全文
相关推荐
java中super关键字的三种用法
java中super关键字的三种用法
Java继承后访问成员的特点.docx
对象访问成员变量时,会先在子类中查找有没有定义对应的变量,若子类中存在就会就近使用子类中的变量,若子类中没有定义就会沿着继承关系往上找有没有定义相应的变量,若父类中也没有则编译不通过。代码示例:
Java super关键字的使用方法详解
主要介绍了Java super关键字的使用方法详解的相关资料,希望通过本文能帮助到大家,让大家对super关键字彻底掌握,需要的朋友可以参考下
Java 限制子类访问的方法分析
主要介绍了Java 限制子类访问的方法,结合实例形式分析了java类的继承与访问相关操作技巧与使用注意事项,需要的朋友可以参考下
论JAVA继承机制中父类与子类的关系
论JAVA继承机制中父类与子类的关系


Java SE
