using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication2
{
public class Animal
{
public virtual void Draw()
{
Console.WriteLine("Eat something");
}
}
public class Dog : Animal
{
public override void Draw()
{
Console.WriteLine("dog");
}
}
public class Cat : Animal
{
public override void Draw()
{
Console.WriteLine("cat");
}
}
public class Fish : Animal
{
public override void Draw()
{
Console.WriteLine("fish");
}
}
}
class Program
{
static void Main(string[] args)
{
Animal[] a = new Animal[4];
a[0] = new Cat();
a[1] = new Fish();
a[2] = new Dog();
a[3] = new Animal();
foreach (Animal drawObj in a)
{
drawObj.Draw();
}
}
如果C#没有这种功能,你得为每个类创建一个数组。继承的性质可以让派生对象当作基类成员一样用,这样就节省了编程工作量。