JAVA的多态是什么

JAVA的多态是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。

JAVA的多态是什么-Worktile社区

JAVA的多态是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。

首先,多态指同一个实体同时具有多种形式。它是面向对象程序设计(OOP)的一个重要特征。如果一个语言只支持类而不支持多态,只能说明它是基于对象的,而不是面向对象的。

另外,多态是出现在具有继承关系的两个类的对象之间,所以它不像方法重载(发生在一个类中)在编译期间发生(也就是确定下来),而是在运行期间发生(确定下来)。

多态有两种表现形式:重载和覆盖

首先说重载(overload),是发生在同一类中.与什么父类子类、继承毫无关系。

标识一个函数除了函数名外,还有函数的参数(个数和类型)。也就是说,一个类中可以有两个或更多的函数,叫同一个名字而他们的参数不同。

他们之间毫无关系,是不同的函数,只是可能他们的功能类似,所以才命名一样,增加可读性,仅此而已!

再说覆盖(override),是发生在子类中!也就是说必须有继承的情况下才有覆盖发生.

我们知道继承一个类,也就有了父类了全部方法,如果你感到哪个方法不爽,功能要变,那就把那个函数在子类中重新实现一遍。

这样再调用这个方法的时候,就是执行子类中的过程了.父类中的函数就被覆盖了。(当然,覆盖的时候函数名和参数要和父类中完全一样,不然你的方法对父类中的方法就不起任何作用,因为两者是两个函数,毫不关系)

延伸阅读:

什么是Java

Java programming language具有大部分编程语言所共有的一些特征,被特意设计用于互联网的分布式环境。Java具有类似于C++语言的”形式和感觉”,但它要比C++语言更易于使用,而且在编程时彻底采用了一种”以对象为导向”的方式。使用Java编写的应用程序,既可以在一台单独的电脑上运行,也可以被分布在一个网络的服务器端和客户端运行。另外,Java还可以被用来编写容量很小的应用程序模块或者applet,做为网页的一部分使用。applet可使网页使用者和网页之间进行交互式操作。

使用Java编写的应用程序,既可以在一台单独的电脑上运行,也可以被分布在一个网络的服务器端和客户端运行。另外,Java还可以被用来编写容量很小的应用程序模块或者applet,做为网页的一部分使用。applet可使网页使用者和网页之间进行交互式操作。

Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。常用的Java平台基于Java1.8,最近版本为Java19。

文章标题:JAVA的多态是什么,发布者:小编,转载请注明出处:https://worktile.com/kb/p/36135

(1)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小编小编站长
上一篇 2023年1月30日 下午10:42
下一篇 2023年1月30日 下午10:46

相关推荐

  • 绩效考核指标量化的方法有哪些

    绩效考核指标量化的方法包括:1、统计结果量化方法;2、目标达成情况量化方法;3、频率量化方法;4、余额控制量化方法;5、分段赋值量化方法;6、强制百分比量化方法等。统计结果量化是指按照任务完成后的状况,直接给出数字化的任务结果。 一、12个指标量化方法 1、统计结果量化方法 统计结果量化是指按照任务…

    2022年12月8日
    46700
  • 项目计划的实施过程和项目管理过程组中的执行过程的区别是什么

    项目计划的实施过程和项目管理过程组中的执行过程的区别是:1、焦点不同;2、时间跨度不同;3、角色职责不同。项目计划的实施过程主要关注于执行项目计划,确保项目按照预先制定的计划顺利进行。而项目管理过程组中的执行过程更侧重于实际的项目执行工作,包括资源调配等。 一、项目计划的实施过程 项目计划的实施过程…

    2023年7月30日
    12200
  • 巨量引擎是干什么的

    巨量引擎是一家以数据驱动的智能营销平台,致力于提供广告推广和营销解决方案。核心服务包括:1、精准广告投放、2、数据分析与用户画像、3、增长营销与效果衡量。文章中将通过详细阐述这三个方面来展示巨量引擎的功能。此外,还会深入探讨它在精准广告投放方面的具体运作机制。 1、精准广告投放 巨量引擎利用先进的大…

    2023年8月8日
    18400
  • tcp udp区别

    TCP(传输控制协议)和UDP(用户数据报协议)都是网络传输的核心协议,主要用于数据的发送和接收。在使用过程中,它们存在五个主要的区别:1.是否可靠;2.是否面向连接;3.传输速率;4.使用场景;5.头部开销。总的来说,TCP提供了可靠的数据传输服务,而UDP则提供了更快的传输速度。 1.是否可靠 …

    2023年5月18日
    13800
  • 低代码开发平台是什么

    低代码开发平台(Low-Code Platform)是一个允许开发者快速构建、部署和管理应用程序的环境,而无需涉足繁琐的编程工作。这种平台旨在将软件开发门槛降到最低,使非专业开发者也能够参与应用开发。本文探讨了低代码平台的基础知识、历史背景、主要特点和作用。 1.低代码平台的基本介绍 低代码开发平台…

    2023年7月16日
    7900
  • 使用 Angular 打造微前端架构的 ToB 企业级应用

    这篇文章其实已经准备了11个月了,因为虽然我们年初就开始使用 Angular 的微前端架构,但是产品一直没有正式发布,无法通过生产环境实践验证可行性,11月16日我们的产品正式灰度发布,所以是时候分享一下我们在使用 Angular 微前端这条路上的心得(踩过的坑)了额,希望和 Angular 社区一…

    2022年3月20日
    1.1K00
  • b2c与b2b的区别

    b2c与b2b的区别是:1、概念不同;2、交易模式不同;3、产品特征不同;4、用户特征不同。b2b是通过私有网络或互联网在企业之间交换和传输数据和信息,并开展业务活动的商业模式。b2c:电子商务是根据交易对象进行分类的,即企业组织与消费者之间的电子商务。 1、概念不同 B2B:通过私有网络或互联网在…

    2023年1月31日
    53800
  • 权限管理有哪些技术

    权限管理有以下技术:1、功能权限管理技术;2、数据级权限管理技术。功能权限管理技术,一般就使用基于角色访问控制技术RBAC(Role Based Access Control)。该技术被广泛运用于各个系统,非常容易掌握。 1、功能权限管理技术 功能权限管理技术,一般就使用基于角色访问控制技术RBAC…

    2023年1月16日
    41700
  • 员工培训和发展的优异实践是什么

    员工培训和发展是推动企业增长和员工职业成长的核心环节。优异实践包括:1、明确培训目标和需求,2、个性化培训方案,3、利用混合学习模式,4、实践与反馈结合,5、长期发展规划,6、有效评估和跟踪。其中,通过个性化培训方案,针对员工的个别需求设计培训内容和方式,能使培训更具针对性和效果。 1、明确培训目标…

    2023年8月9日
    8400
  • mmcv和opencv有什么区别

    区别:1、开发背景不同;2、主要功能差异;3、集成与扩展性;4、性能与效率;5、社区支持与文档完善程度;6、适用领域与案例应用。其中,开发背景不同意味着opencv主要面向通用的计算机视觉任务,而mmcv则更侧重于深度学习与计算机视觉结合的应用。 1、开发背景不同 mmcv:mmcv是来自于MMde…

    2023年7月30日
    18800

发表回复

登录后才能评论
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部