C#基础学习之【3】多态与静态对象的使用1

来源:互联网 发布:手机麻将软件制作 编辑:程序博客网 时间:2024/04/28 13:50

1、多态的使用

using System;using System.Collections.Generic;using System.Text;namespace ConsoleApplication1{    // 定义一个叫Enemy的基类    public class Enemy    {        //构造函数        public Enemy()        {            Console.WriteLine("enemy 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,先执行Enemy的构造函数,再执行Boss的            for (int i = 0; i < 2; i++)            {                // enemies[0]会调用Enemy类的UpdateAI                // enemies[1]会调用Boss类的UpdateAI                enemies[i].UpdateAI();            }            // 输入任意键退出            Console.ReadKey();        }    }}

2、static对象

using System;using System.Collections.Generic;using System.Text;namespace ConsoleApplication1{    public class Player    {        public static int count = 0; //静态成员,用于统计Player对象的数量        public Player()        {            count++; // 每创建一个Player对象,count自加一次        }    }    class Program    {        static void Main(string[] args)        {            Player player1 = new Player(); //创建一个Player对象            Console.WriteLine(Player.count);// 输出1,有1个Player            Player player2 = new Player();// 又创建一个Player对象            Console.WriteLine(Player.count); // 输出2,有2个Player            // n = player2.count; 错误用法,静态成员不能被对象直接调用            // 输入任意键退出            Console.ReadKey();        }    }}


0 0
原创粉丝点击