首页 > 代码库 > 继承与多态

继承与多态

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication4{    //定义了一个叫Enemy 类    public class Enemy    {        //构造函数        public Enemy()        {            Console.WriteLine("enmey contructor");        }        //声明为虚方法        public virtual void UpdateAI()        {            //Enemy的AI            Console.WriteLine("update enemy ai");        }    }    //派生类Boss继承自基类Enemy    public class Boss : Enemy    {        //构造函数        public Boss()        {            Console.WriteLine("boss contructor");        }        //添加override,代替基类的方法        public override void UpdateAI()        {            //Boss的AI            Console.WriteLine("update boss ai");        }    }    class Program    {        static void Main(string[] args)        {          Enemy [] enemies=new Enemy[2];//创建一个数组,包括两个Enemy基类          enemies[0] = new Enemy();//创建一个Enemy,执行Enemy的构造函数          enemies[1] = new Boss();//创建一个Boss,先执行Enemey的构造函数,再执行Boss的          for (int i = 0; i < 2; i++)          {             //enemies[0]会调用Enemy类的UpdateAI              //enemies[1]会调用Boss类的UpdateAI              enemies[i].UpdateAI();          }                      //按任意键退出          Console.ReadKey();        }    }}

 

继承与多态