当前位置: 移动技术网 > IT编程>开发语言>c# > C# 中关于重载与重写的区别及用法

C# 中关于重载与重写的区别及用法

2019年08月31日  | 移动技术网IT编程  | 我要评论

1、重载(overload): 在同一个作用域(一般指一个类)的两个或多个方法函数名相同,参数列表不同的方法叫做重载,它们有三个特点(俗称两必须一可以):

  • 方法名必须相同
  • 参数列表必须不相同
  • 返回值类型可以不相同

例如:

public void sleep()
{
    console.writeline("animal睡觉");
}
public int sleep(int time)
{
    console.writeline("animal{0}点睡觉", time);
    return time;
}

2、重写(override):子类中为满足自己的需要来重复定义某个方法的不同实现,需要用 override 关键字,被重写的方法必须是虚方法,用的是 virtual 关键字。它的特点是(三个相同):

  • 相同的方法名
  • 相同的参数列表
  • 相同的返回值

如:父类中的定义:

public virtual void eatfood()
{
    console.writeline("animal吃东西");
}

子类中的定义:

public override void eatfood()
{
    console.writeline("cat吃东西");
}

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网