说实话对这个认识有点蒙,看不懂,只能在不同例子中找规律 如图,B类继承A类,C类继承B类 当C c = new C();,c能调用父类和祖宗类的方法 当是A a = new C()时,变量a只能调用A类中的方法,不能调用B类和C类的方法 当B b = new C()时,b只能调用B类和A类中的方法,但不调用c的 若C类重写了祖父A类的方法,当B b = new C()时,b.test()执行的是C类的方法 若是下图的情况,则输出的是A类中没有被重写的方法 如下图,则输出的是B类中的方法