虚方法: 可以在该类的继承自类中改变其实现的方法.
接口: 一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现.
Example:
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Abstract \r\n");
AbstractChild aChild = new AbstractChild();
aChild.Show();
Console.WriteLine("\r\nVirtual \r\n");
VirtualChild vChild = new VirtualChild();
vChild.Show();
Console.WriteLine("\r\n Interface \r\n");
Child iChild = new Child();
iChild.Show();
Console.Read();
}
}
public abstract class AbstractParent
{
public abstract void Show();
}
public class AbstractChild : AbstractParent
{
public override void Show()
{
Console.WriteLine("Child called.");
}
}
public class VirtualParent
{
public virtual void Show()
{
Console.WriteLine("virtual Parent called.");
}
}
public class VirtualChild : VirtualParent
{
public override void Show()
{
Console.WriteLine("virtual Child called.");
}
}
public interface IParent
{
void Show();
}
public class Child : IParent
{
public void Show()
{
Console.WriteLine("Interface called.");
}
}
}