Cym02 2021-11-22 15:52 采纳率: 100%
浏览 35
已结题

Java中多态的虚拟方法调用,具体有什么作用呢

网上查资料,只了解代码解耦合。
但是不知道调用虚拟方法,在实际生产环境中,具体可以做什么呢。
求帮助

  • 写回答

4条回答 默认 最新

  • 冰思雨 2021-11-22 18:23
    关注

    虚方法,是底层实现上的概念,不是多态在编程当中的概念,这是两码事儿。
    你的问题应该是:Java的多态,具体有什么作用。
    这样容易被人理解你要问的问题。


    计算机程序由两大部分组成,分别是行为和数据。
    行为就是通过函数的调用来体现的,数据是通过常量、变量和参数来体现的。
    通常情况下,函数的名称会标明函数的行为,但是,在多态的场景中,会出现相同函数名,不同对象调用后,真实行为会不同。
    比如猫叫和狗叫,虽然都是叫,但是叫声不同。
    如果猫和狗都继承自动物,都会叫,那么,猫的叫和狗的叫就会不相同。


    Java语言是面向对象的编程语言,里面有类和对象的概念。
    因为计算机程序可以理解成由行为和数据组成,那么,在设计类的时候,也可以把类设计成完成操作(行为)的类和保存数据的类。
    完成操作的类,我们一般称为Action类;保存数据的类,我们一般称为Bean类。
    多态的概念,涉及的是Action类。
    如果有两个以上的子类继承并实现了相同父类(或接口)的相同方法,同时,这些子类的同名方法中,实现方案也各不相同,那么,在实际使用当中的表现,就被称为多态。在编程使用当中,由于同名方法继承自父类(或接口),就可以直接使用父类(或接口)的引用来指向子类的对象,而不用使用具体的子类引用,换句话说就是面向父类(或接口)编程,从而使得同名的函数,不同的子类表现同不相同。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 11月30日
  • 已采纳回答 11月22日
  • 创建了问题 11月22日

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效