C#事件Event--猫捉老鼠

1  猫类Cat

class Cat{
    public string name;
    public string color;

    public Cat(string name, string color){
        this.name = name;
        this.color = color;
    }
    
    public void catComing(){
        Console.write(color + "颜色的" + name + "" + "走来了",)
        
        catCome;
    }
    
    public Event Action catCome;
}    

2 mouse类

class Mouse
    {
        private string name;
        private string color;
        public Mouse (string name, string color, Cat cat)
        {
            this.name = name;
            this.color = color;
            cat.catCome += this.RunAway;
        }

        public void RunAway()
        {
            Console.WriteLine(color + "的老鼠" + name + "说:毛来了,赶紧跑。");
        }
    }

3. main

class Program
    {
        static void Main(string[] args)
        {
            Cat cat = new Cat("加菲猫", "黄色");
            Mouse mouse1 = new Mouse("米老鼠", "灰色", cat);
            //cat.catCome += mouse1.RunAway;
            Mouse mouse2 = new Mouse("唐老鸭", "白色", cat);
            //cat.catCome += mouse2.RunAway;
            cat.CatComing();
            //cat.catCome()/*;*/
            Console.ReadKey();
        }
    }
原文地址:https://www.cnblogs.com/wxhao/p/13625407.html