gpt4 book ai didi

c# - 方法签名、重载、覆盖 : are all these terms related?

转载 作者:行者123 更新时间:2023-11-30 13:30:26 25 4
gpt4 key购买 nike

术语“重载”和“覆盖”听起来非常相似(这就是为什么它们有时相互对立),但这两个概念在技术上是否相关?

  1. 术语“重载”和“覆盖”是否相关?

术语“重载”取决于“方法签名”定义。所以我有一个类似的问题。

  1. (相关)术语“method signature”是否也与“覆盖”相关?

最佳答案

重载是指多个函数具有相同的名称,但参数不同。例如

例如

void SayHi(string name) { ... }
void SayHi(string, int age) {.... }

这些是重载。

覆盖“替换”现有函数,因此您采用现有函数并提供具有相同名称和相同参数的全新函数

class Person
{
public virtual void SayHi(string name)
{
// ....
}
}

class Teenager : Person
{
public override void SayHi(string name)
{
// ....
}
}

方法签名与重写相关,新的重写函数必须与其尝试重写的方法具有相同的方法签名,并且返回类型相同。

方法签名与重载相关,重载必须具有不同的方法签名。

关于c# - 方法签名、重载、覆盖 : are all these terms related?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35541580/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com