示例#1
0
            static void Main()
            {
                Programer p = new Programer();

                Emp e = p as Emp;

                if (e != null)
                {
                    System.Console.WriteLine(e.ToString());
                }
            }
示例#2
0
        public static void Run()
        {
            Console.CancelKeyPress += Console_CancelKeyPress;
            IsCancel = false;
            var messagechanged = false;
            var center         = new MessageCenter();
            var programer      = new Programer();
            var manager        = new Manager();

            center.RegisterService(manager);
            center.RegisterService(programer);
            center.MessageChanged += new MessageChangedHandle(() => {
                messagechanged = true;
            });
            int i = 0;

            while (!IsCancel)
            {
                if (i > 10)
                {
                    center.UnregisterService(programer);
                }
                if (i > 20)
                {
                    center.UnregisterService(manager);
                    center.RegisterService(programer);
                }
                if (i > 30)
                {
                    center.RegisterService(manager);
                }
                if (i % 3 == 0)
                {
                    center.Message = i.ToString();
                }
                if (messagechanged)
                {
                    messagechanged = false;
                    Console.Clear();
                    Console.Write(programer.Message + "    " + manager.Message);
                }
                i++;
                System.Threading.Thread.Sleep(500);
            }
        }
示例#3
0
 public Penguin()
 {
     swimmer   = new Swimer(PrintScheduleInfo);
     programer = new Programer(PrintScheduleInfo);
 }