谈一谈多态忠成员变量,方法问题

来源:互联网 发布:一斩必杀·村雨淘宝 编辑:程序博客网 时间:2024/06/07 14:18

多态:Fu fu = new ZI()

这样一个简单例子都很熟悉,为什么会出现调用函数是子类,而成员变量是父类呢?


下面说一下我自己的见解:编译时期,栈中存的引用是父类,因此调用方法与变量时只能调用父类的,不能调用子类独有的,因为java认为它现在是父类,到了运行时,fu这个引用存的地址指向子类这个对象,所以在调用时调用的是子类的函数(如果被覆盖了),可是这么说来调用变量时变量应该是子类的啊,其实变量并不能够覆盖,所以java只知道我们要调用父类的成员,并不知道调用子类,因此,成员变量调用父类。

0 0
原创粉丝点击