Пример #1
0
        static void Main(string[] args)
        {
            //Console.WriteLine("Hello World!");
            //Rectangle hlelo = new Rectangle(10,20);
            //hlelo.Display();
            //System.Attribute[] attrs = System.Attribute.GetCustomAttributes(typeof(Rectangle));
            //foreach (System.Attribute attr in attrs)
            //{
            //    DeBugInfo a = (DeBugInfo)attr;
            //    Console.WriteLine(a.BugNo);
            //}
            // *********************firdelegate.cs*********************
            //FirstDelegate f_delegate = new FirstDelegate();
            //printString ps1 = new printString(FirstDelegate.WriteToScreen);
            //printString ps2 = new printString(FirstDelegate.WriteToFile);
            //FirstDelegate.sendString(ps1);
            //FirstDelegate.sendString(ps2);
            //Console.ReadKey();
            //*********************secdelegate.cs************************
            //ProductFactory productFactory = new ProductFactory();
            //WrapFactory wrapFactory = new WrapFactory();
            //Func<string, Product> hello;
            //Func<string,Product> func1 =new Func<string, Product>(productFactory.MakePizza);
            //Func<string,Product> func2 = new Func<string, Product>(productFactory.MakeToyCar);
            //hello = func1 + func2;
            //Logger logger = new Logger();
            //Action<Product> log = new Action<Product>(logger.Log); //Log的委托;

            //Box box1 = wrapFactory.WrapProduct(hello("sdf"), log);
            ////Box box2 = wrapFactory.WrapProduct(func2("safdsd"), log);

            //Console.WriteLine(box1.Product.Name);
            /**********************firevent.cs**********************/
            //Incrementer incrementer = new Incrementer();
            //Dozens dozensCounter = new Dozens(incrementer);
            SomeOtherClass other = new SomeOtherClass();
            ////incrementer.CountedADozen()     
            //incrementer.DoCount();
            testEvent say = new testEvent();
            jim       a   = new jim(say, "america");
            tom       b   = new tom(say, "france");
            //say.who_said("c");
            //EventTest e = new EventTest(); /* 实例化对象,第一次没有触发事件 */
            //subscribEvent v = new subscribEvent(); /* 实例化对象 */
            //e.ChangeNum += v.printf; /* 注册 */
            //showenvent t = new showenvent();
            //e.ChangeNum += t.printf;
            //e.SetValue(7);
            //e.SetValue(11);
            //hello test = new hello();
            //test.print_v();
            //helloTinterface<string> printT = new helloTinterface<string>();
            //printT.printT("show printT");
            /************************************catevent***************************/
            Cat    cat = new Cat();
            Mouse  m   = new Mouse();
            People p   = new People();

            //关联绑定
            cat.CatCall += new CatCallEventHandler(m.MouseRun);
            cat.CatCall += new CatCallEventHandler(p.WakeUp);
            cat.OnCatCall();

            Console.ReadKey();
        }