我没有得到的是钱是从Parent类中挑选出来的,但是这个指针引用属于Child对象? 这两件事都应该属于一个范围吗?
class Parent
{
int money=10;
Parent parentMethod(){
System.out.println(money);
return this;
}
}
class Child extends Parent{
int money=11;
}
public class Demo1 {
public static void main(String[] args) {
Child ch=new Child();
System.out.println(ch.parentMethod());
System.out.println(ch.parentMethod() instanceof Child);
}
}
输出:
10
demos.Child@1540e19d
10
true
答案 0 :(得分:2)
实例变量不能被覆盖。 parentMethod()
是在Parent
类中定义的,因此它只能看到money
类的Parent
实例变量。
如果您在parentMethod()
类中覆盖了Child
,并在money
类方法的主体中访问了Child
变量,您将看到Child
类money
实例变量。