同学,你写的好乱呀!好难懂,我读了好几遍才懂了你的意思,这个问题你完全可以自己验证。其实我也是一个菜鸟,看到你的问题以后我就写了一个小小的代码,下面是我得出的结论:Fu f = new Zi();(1)此时你要是用f调用父类中的静态成员(静态成员变量和静态成员方法),jvm就会执行父类中的静态成员,(2)若当你调用子类中的静态成员时。编译器会报错(找不到符号),这里我说一下你要是想调用一个类中的静态成员,你完全可以用类名.方法名或者类名.变量名。(3)当f调用的方法在子类中已经重写过时,这时就会调用子类中的方法(即多态),(4)当f调用父类中的方法时(若子类中没有重写)则jvm机会执行父类中的方法,(5)当f调用子类中独用的方法时,编译器会报错。 |