c#方法重写与方法重载

方法重载

定义:一个类中可以有一个以上的方法拥有相同的名称,但是签名不同(签名包括方法的名称,参数的数目,参数数据类型和顺序,参数修饰符)

注意:返回类型和形参的名称不是签名的一部分。

class A
{
   int Add(int a,int b) {return a+b;}
   int Add(int a,int b,int c){return a+b+c;}
   string Add(string a,string b){...}
}  

方法重写

定义:要求方法名,参数返回值相同。

意义:重写是对类中方法的扩充,因为继承用的是父类的东西,重写的话不仅得到父类的东西,也加入了自己的东西。(通俗一些来说就是父亲的公司有一套运行模式,儿子继承父亲的公司,对父亲的运行模式的基础上又加入了自己的东西)

注意:重写父类中的方法前要加上virtual子类的方法前加上override.

class A//父类
{
   public virtual void Print(int a)
   {
    ...
   }
}
class B:A//子类继承父类
{
   public override void Print(int a)
   {
    ...
   }
}

猜你喜欢

转载自blog.csdn.net/qq_41679818/article/details/80728123
今日推荐