多态性(polymorphism)和超载(overloading)的区别

多态性和重载是OOP(面向对象编程)中使用的两种函数类型。由于它们在功能上的相似性,常常被混淆为同义词。但是,这两个函数是不同的,用于产生不同的结果。...
关键区别:多态特性允许用户用统一的接口处理不同的数据类型和函数。一个可以计算或应用于不同类型值的函数称为多态函数。方法重载是编程语言中的一个特性,它允许创建几个名称相同但在输入和输出类型上不同的方法。

多态性和重载是OOP(面向对象编程)中使用的两种函数类型。由于它们在功能上的相似性,常常被混淆为同义词。但是,这两个函数是不同的,用于产生不同的结果。

多态性(polymorphi**)和超载(overloading)的区别

多态性特性允许用户使用统一的接口处理不同的数据类型和函数。一个可以计算或应用于不同类型值的函数称为多态函数。它涉及跨具有相同基类型的各种类型更改特定方法的实现/功能。在OOP中,子类型多态性被称为简单的多态性,它能够创建具有多个形式的变量(可以是函数或对象)。根据Wikipedia.org,“多态性在工业中的主要用途(面向对象编程理论)是属于不同类型的对象响应同名方法、字段或属性调用的能力,多态性与接口或更通用的基类的特定实现的应用有关。

方法重载是编程语言中的一个特性,它允许创建几个名称相同但在输入和输出类型上不同的方法。在重载中,用户可以使用相同的名称编写多个方法,但这些方法的参数不同。函数重写有两个规则:重载函数必须在arity或数据类型上有所不同,并且相同的函数名用于函数调用的各个实例。Wikipedia.org指出,“方法重载通常与静态类型编程语言相关联,后者在函数调用中强制类型检查。当重载一个方法时,实际上只是创建了许多恰好具有相同名称的不同方法。在编译时会解决使用哪种方法。”

多态性(polymorphi**)和超载(overloading)的区别
  • 发表于 2021-07-13 06:47
  • 阅读 ( 178 )
  • 分类:通用

你可能感兴趣的文章

瞬变(transient)和平衡多态性(balanced polymorphism)的区别

瞬时多态性和平衡多态性的关键区别在于等位基因的行为。瞬时多态性是指一个基因的一个等位基因被另一个等位基因进行替换,而平衡多态性是指一个基因的两个不同等位基因随着时间的推移而保持不变 遗传多态性是一个...

  • 发布于 2020-09-21 23:59
  • 阅读 ( 435 )

压倒一切(overriding)和c中的过载#(overloading in c#)的区别

...主要优点是它支持面向对象编程(OOP)。OOP的一个支柱是多态性。它使一个对象具有多种行为。多态性有两种类型,称为重写和重载。本文讨论了C中方法重写和重载之间的区别。 目录 1. 概述和主要区别 2. 在C中重写是什么# 3. ...

  • 发布于 2020-10-18 23:50
  • 阅读 ( 218 )

多态性(polymorphism)和oop中的继承(inheritance in oop)的区别

...封装四大支柱。本文讨论了OOP中多态与继承的区别。OOP中多态性与继承的关键区别在于多态性是一个对象以多种方式表现的能力,而继承则是使用现有类的属性和方法创建一个新的类。 目录 1. 概述和主要区别 2. 什么是OOP中的多...

  • 发布于 2020-10-19 21:16
  • 阅读 ( 552 )

超载(overloading)和在java中重写(overriding in java)的区别

...的实例。这些对象与其他对象通信。OOP的一个主要概念是多态性。它是一个对象以多种方式表现的能力。多态性分为重载和重写两部分。本文将在Java中讨论这两者之间的区别。Java中重载和重写之间的关键区别在于,重载是使用...

  • 发布于 2020-10-19 21:20
  • 阅读 ( 367 )

多态性(polymorphism)和同素异形(allotropy)的区别

多态性与同素异形体的主要区别在于,多晶性发生在化合物中,而同素异形体则发生在化学元素中。 多态性是指同一固体物质存在几种不同形式。这意味着这类化合物可能有不止一种晶体结构。另一方面,同素异形是一个类...

  • 发布于 2020-10-22 11:39
  • 阅读 ( 668 )

同构(isomorphism)和多态性(polymorphism)的区别

同构(isomorphi**)和多态性(polymorphi**)的区别 化合物在自然界中可以以不同的形式存在。这些不同的形态可以是不同的形态或结构。化合物的结构决定了该化合物的物理性质。有时化学性质也由结构决定。“形态”是一个用来命...

  • 发布于 2020-10-24 01:53
  • 阅读 ( 401 )

超载(overloading)和覆盖(overriding)的区别

...它们将执行类似的任务。重载也被识别,因为它被识别为多态性的一种情况,在这种情况下,一些或所有操作符可以有不同的实现,这些实现依赖于它们指定的参数类型。重写取决于基类函数的外观。一种语言功能重写,它允许...

  • 发布于 2021-06-23 10:08
  • 阅读 ( 180 )

继承(inheritance)和多态性(polymorphism)的区别

遗传与多态性 在生物学中,当两个或两个以上明显不同的表型(或性状)存在于同一物种群体中或形态或形态的发育时,就会发生多态性。为了说明这一点,变形应该同时拥有相同的习惯,并且必须进行随机交配。多态性可能...

  • 发布于 2021-06-23 16:58
  • 阅读 ( 296 )

突变(mutation)和多态性(polymorphism)的区别

主要差异突变(main difference mutation) vs. 多态性(polymorphi**) 突变和多态性是用来描述DNA变异的两个术语。DNA变异可能是由于DNA复制错误或外部因素(如紫外线和化学物质)造成的。突变是指特定个体的DNA变异,而多态性是指...

  • 发布于 2021-06-29 09:54
  • 阅读 ( 323 )

同构(isomorphism)和多态性(polymorphism)的区别

主要差异同构(main difference isomorphi**) vs. 多态性(polymorphi**) 在自然界中,元素和化合物可以以不同的组合存在,具有不同的结构或形态。一种化合物的结构决定了它的大部分物理性质,有时也决定了它的化学性质。“态射...

  • 发布于 2021-06-29 10:23
  • 阅读 ( 350 )
fdyhxejmwi
fdyhxejmwi

0 篇文章

相关推荐