java继承

首先Child child = new Child()。这句话,会创建一些对象,有Child的实例,Parent的实例,还有Object的实例,然后当执行这一句child.setChange()的时候,JVM会首先通过Child实例看有没有那个方法,如果没有,在通过Parent实例,等等,一直到Object.所以原来的代码,是通过父类的实例来执行的setChanged()方法,其中的changed属性也是父类的私有成员变量。只是私有成员不能通过实例显式调用,但是可以通过这种方法调用。

你可能感兴趣的:(java)