1.虚方法在父类中用关键字“virtual”修饰,在子类实现中用“override”修饰,子类调用父类的关键字是“base”和java中的super是一样的。
测试类
using System;
namespace Demo3
{
class Program
{
static void Main(string[] args)
{
Grape g = new Grape();
g.name();
}
}
}
基类
using System;
using System.Collections.Generic;
using System.Text;
namespace Demo3
{
/// <summary>
/// 藤类生长水果
/// </summary>
public abstract class Rattan
{
public virtual void name() {
Console.WriteLine("我是基类虚方法");
}
}
}
子类
using System;
using System.Collections.Generic;
using System.Text;
namespace Demo3
{
/// <summary>
/// 葡萄类
/// </summary>
public class Grape : Rattan
{
public override void name()
{
base.name();//在子类中调用父类
Console.WriteLine("我是子类重写了父类的虚方法,并在我的方法里调用了父类的方法");
}
}
}