方法重载
定义:一个类中可以有一个以上的方法拥有相同的名称,但是签名不同(签名包括方法的名称,参数的数目,参数数据类型和顺序,参数修饰符)
注意:返回类型和形参的名称不是签名的一部分。
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)
{
...
}
}