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

过载与覆盖...

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

过载与覆盖

重载和重写都是大多数编程语言的特性。重载是一种特性,它允许在同一个类中创建几个具有相同名称的方法,但在函数的输入类型和输出类型方面彼此不同。方法重载通常与在函数调用中强制类型检查的静态编程语言相关联。这些最有可能与VB、.NET、C++、D、java等有关。重写是面向对象编程的主要技能,当用户重新定义已经在现有或父类中定义的方法时,重写是一种主要的技能。在这种编程技术中,通过允许用低级或子类编写的脚本实现已在任何父类或高级类中设置的方法或指令集,脚本被编码为执行特定任务。

在计算机程序设计中,重载源于一个方法,该方法在同一范围内有多个定义,并共享同一名称,但签名不同。方法实现共享相同的名称,因为它们将执行类似的任务。重载也被识别,因为它被识别为多态性的一种情况,在这种情况下,一些或所有操作符可以有不同的实现,这些实现依赖于它们指定的参数类型。重写取决于基类函数的外观。一种语言功能重写,它允许子类实现一个方法,该方法已经被它的一个超类或父类使用,允许子类方法指定与在超类中使用的被重写方法相同的名称、参数列表和返回类型或签名。

重载被认为是实用的,因为它允许程序员编写许多恰好具有相同名称的不同方法。重载可能会对语言产生一些影响,因为在运行时处理器会更改所有重载方法的名称。它在编译时解析。而重写是一个多态性,它是在运行时解析的隐式第一个参数的基础上设计的。

Summary:The term 重载通常与静态编程语言有关,重写在面向对象编程中很流行,一个类中具有相同方法名和不同签名的方法被指定为重载方法。重写称为类中具有相同方法名和相同参数/签名的方法。重载在同一类中可用的方法之间共享统一关系,而在重写中,则创建了超类方法和子类方法之间的关系。重载允许从超类继承。在重写中,子类方法代替超类。重载必须有不同的方法签名,而重写必须分配相同的签名。

  • 发表于 2021-06-23 10:08
  • 阅读 ( 180 )
  • 分类:IT

你可能感兴趣的文章

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

...将全部打印Shape类的显示方法的内容。 什么是c中的过载#(overloading in c#)? 在重载中,多个方法具有相同的名称,但具有不同的参数。参数可以是不同类型的。这些方法也可以有不同数量的参数。方法重载发生在同一个类中。重...

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

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

...表格形式在Java中重载与重写 6. 摘要 什么是java中的重载(overloading in java)? 重载是使用不同的实现创建同名的多个方法的能力。请参阅下面的Java代码。 图01:Java程序,解释使用不同数量的参数重载 根据上面的程序,类A包含两个...

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

crash override希望帮助gamergate和其他在线虐待的幸存者

...网络骚扰和虐待的幸存者正在反击。
 Crash Override是一个新的“在线反骚扰工作组”,由Alex Lifschitz和Zoe Quinn管理。奎因,游戏开发商和《抑郁探索》的创作者,是Gamergate愤怒暴徒的第一个目标,自从完全捏造她的...

  • 发布于 2021-04-28 16:53
  • 阅读 ( 202 )

谷歌超载,便宜的电脑游戏,和基本的电脑建设技巧

本周我们在播客上讨论了大量的谷歌新闻,在PC游戏上找到了大量的交易,以及第一次电脑**者的基本时间。我们还将回答您关于将iPhone数据迁移到Android、覆盖恼人的YouTube默认值以及改善MacBook Pro音质的问题。抱歉,伙计们,本...

  • 发布于 2021-05-22 11:13
  • 阅读 ( 138 )

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

...编译时多态性”。示例程序如下。 Figure 4: Java program with overriding 重载类有两个方法,其名称与sum相同。第5行中的sum方法不包含任何参数。它将两个值10和20相加,返回结果,即30,第11行的和方法得到两个参数。它添加了这两个...

  • 发布于 2021-07-01 09:50
  • 阅读 ( 430 )

函数重载(function overloading)和C++中的重写(overriding in c++)的区别

...决定了调用函数的哪个版本。 函数间重载(between function overloading)和C++中的重写(overriding in c++)的区别 C++中函数重载是编译时多态性,而C++中的函数重写是运行时 重载中有一个特定的关键字,而“Virtual”是函数重写中的一个特定...

  • 发布于 2021-07-08 11:14
  • 阅读 ( 342 )

方法重载(method overloading)和覆盖(overriding)的区别

...raw方法覆盖Source1类中定义的绘图方法。 方法重载(method overloading)和方法覆盖(method overriding)的区别 在方法重载中,方法必须具有不同的签名。在方法中,重写方法必须具有相同的签名。 函数重载是对方法的行为进行更多的“...

  • 发布于 2021-07-08 17:55
  • 阅读 ( 266 )

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

关键区别:多态特性允许用户用统一的接口处理不同的数据类型和函数。一个可以计算或应用于不同类型值的函数称为多态函数。方法重载是编程语言中的一个特性,它允许创建几个名称相同但在输入和输出类型上不同的方法...

  • 发布于 2021-07-13 06:47
  • 阅读 ( 177 )

哦(oop)和流行音乐(pop)的区别

...循自下而上的过程。 程序设计遵循自顶向下的过程。 超载 重载可以是函数重载和运算符重载。 超载是不可能的。 访问 使用Public、private和protected访问说明符。 未使用访问说明符。 示例 C++,java 帕斯卡,Fortran

  • 发布于 2021-07-13 20:38
  • 阅读 ( 103 )

事实上的(virtual)和抽象方法(abstract method)的区别

...实现基于类型的多态性。派生类可以灵活地使用关键字“override”重新实现基类的虚方法。 在C#中,abstract关键字可以与类和方法一起使用。抽象方法是那些缺乏任何形式的实现的方法。然而,实现逻辑是由派生自它们的非抽象...

  • 发布于 2021-07-13 21:02
  • 阅读 ( 172 )
hg1fk1ih
hg1fk1ih

0 篇文章

相关推荐