JAVA中 B类实现了接口A C类继承了B类 接口A和类C可以实现多态 原理是什么

 我来答
百度网友f77eb01
2014-06-25 · TA获得超过407个赞
知道小有建树答主
回答量:615
采纳率:100%
帮助的人:420万
展开全部
多态。子类可以继承父类的方法,也可以覆盖父类方法。原因在于对象实例中的方法表。
“方法表”是对象实例的一个内部数据结构,它保存了“方法”在方法区中的地址。

继承:子类调用父类方法,本质上是子类方法表中对应方法的指针指向了父类的方法表中的某个位置(父类中那个位置的指针指向了“方法区”,也就是保存方法中的指令的地方)。

覆盖:方法指针不指向父类的方法表了,而是直接指向了方法区中放置自身方法定义的那段内存。
effto
2014-06-25 · 超过13用户采纳过TA的回答
知道答主
回答量:109
采纳率:0%
帮助的人:27.4万
展开全部
动态绑定!多态
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
旗逸雅r7
2014-06-24 · TA获得超过195个赞
知道小有建树答主
回答量:125
采纳率:0%
帮助的人:110万
展开全部
动态绑定。。。。。
追问
具体点
追答
这。。。。我也不太懂,这是jvm的东西,不过你可以理解为接口和类在进行申明的时候
A c; B c; C c;之类的什么是也没干,等new对象(实例化和初始化)的时候才在内存里给对象分配内存空间,然后把内存空间(堆中)***地址****的赋值给c(引用指针),存放在栈中,至于c引用与具体new出来的对象怎么关联以及怎样调用对象内的字段和方法的就是动态绑定了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式