Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 方法重写和函数重写/重载之间有什么区别_C#_Oop - Fatal编程技术网

C# 方法重写和函数重写/重载之间有什么区别

C# 方法重写和函数重写/重载之间有什么区别,c#,oop,C#,Oop,我读了很多笔记和在线教程,但我不清楚方法重写和函数重写和函数重载和方法重载之间的基本区别是什么唯一的区别是方法或函数是否被重写/重载。请参见简单说明 方法重载是指具有两个或多个具有相同名称、具有不同数量和/或不同类型参数的方法 例如: 方法重写允许类更改继承的类方法 例如: 对于完全面向对象的编程,我的意思是像C#或Java这样的语言只有方法,没有函数 对于像C这样的完全脚本语言,没有方法,只有函数 P>混合语言如C++、Perl、Python、PHP都有。当代码用作脚本时,他们将调用函数;当

我读了很多笔记和在线教程,但我不清楚
方法重写
函数重写
函数重载
方法重载

之间的基本区别是什么唯一的区别是方法或函数是否被重写/重载。请参见

简单说明

方法重载是指具有两个或多个具有相同名称、具有不同数量和/或不同类型参数的方法

例如:

方法重写允许类更改继承的类方法

例如:


对于完全面向对象的编程,我的意思是像C#或Java这样的语言只有方法,没有函数

对于像C这样的完全脚本语言,没有方法,只有函数

<> P>混合语言如C++、Perl、Python、PHP都有。当代码用作脚本时,他们将调用函数;当代码用作类时,他们将调用方法


请查看更详细的定义。

如果可能,请帮助我提供实际示例。方法和函数在重载和重写方面有什么区别?我知道方法和函数是一样的。@MalikAsadAli它们不一样,请参阅我的答案。在C#中,术语“方法”和“函数”它们实际上是可互换的。因此,您的问题实际上只是询问重载和重写之间的区别。这已经在很大程度上被讨论过了。我们不需要一个新问题。关于最早和最彻底的例子之一,请参见标记的duplicate。什么是函数重载和重写…?完全OOP语言使用方法,而不是前面答案所解释的函数。最接近函数的是c#中的静态方法。
public void AddDog(string type){} 
public void AddDog(string type, string color){}
 public class Dog
    {
        public virtual void Bark()
        {
            Console.WriteLine("Roff");
        }
    }

  public class Wolf:Dog
    {
        public override void Bark()
        {
            Console.WriteLine("Grrr");
        }
    }