一.定义
简单的说,虚方法就是可以被子类重写的方法,如果子类重写了虚方法,那么运行时将使用重写后的逻辑,如果没有重写,则使用父类中虚方法的逻辑。
定义关键字:virtual
重写关键字:override
二.实例
定义一个Person类与Person类的Student子类,如下:
public class Person
{
public string Name { get; set; }
public virtual int Age { get; set; }
public virtual void SayHello()
{
Console.WriteLine("大家好,我是"+this.Name+" 年龄"+this.Age);
}
public virtual int Add(int a)
{
return this.Age+a;
}
}
假设现在学生类有如下需求:
1.需要在SayHello方法中增加学号的返回
2.需要对年龄做出校验,当年龄大于18岁时,直接返回18
pu