zoukankan      html  css  js  c++  java
  • 问题 C: C#委托、类和事件的验证

    题目描述

    程序由两部分组成,如下代码所示。第一部分定义了委托、类和事件。第二部分进行验证。 

    using System;
    namespace HelloWorldApplication
    {
        public delegate void DelegateRing();
        public class Bell{
            public event DelegateRing Ring;
            public void OnRing(){ Ring(); }
        }
    /////////////////////////////////////////////////////////////////
                
                请填写代码
    
    /////////////////////////////////////////////////////////////////
        class HelloWorld
        {
            static void Main(string[] args)
            {
                try{
                    Teacher teacher = new Teacher();
                    teacher.Register(new Bell());
                    Student student = new Student();
                    student.Register(new Bell());
                    Console.ReadKey();
                }
                catch(Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }
        }
    }

    输入

    无输入

    输出

    验证事件输出

    样例输入

    .wrapper {position: relative;} #input {position: absolute;top: 0;left: 0;opacity: 0;z-index: -10;}

    样例输出

    teacher
    student

    提示

    只需要输出样例输出的结果

    只需要提交需要填写的代码

    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace 委托_类和事件的验证
    {
        public delegate void DelegateRing();
        public class Bell
        {
            public event DelegateRing Ring;
            public void OnRing() { Ring(); }
        }
    
        class Teacher
        {
            public void Register(Bell bell)
            {
                bell.Ring += new DelegateRing(HandleEvent);
                bell.OnRing();
            }
            public void HandleEvent()
            {
                Console.WriteLine("teacher");
            }
        }
        class Student
        {
            public void Register(Bell bell)
            {
                bell.Ring += new DelegateRing(HandleEvent2);
                bell.OnRing();
            }
            public void HandleEvent2()
            {
                Console.WriteLine("student");
            }
        }
    
        class HelloWorld
        {
            static void Main(string[] args)
            {
                try
                {
                    Teacher teacher = new Teacher();
                    teacher.Register(new Bell());
                    Student student = new Student();
                    student.Register(new Bell());
                    Console.ReadKey();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }
        }
    }
    

      

  • 相关阅读:
    linux基本知识2
    Notification发送通知
    CSDN管理员看过来
    linux 中安装JDK
    断开网线黑客也能盗走你的数据
    1.6.2 多表插入
    【笨木头Lua专栏】基础补充07:协同程序初探
    猫猫学iOS 之微博项目实战(2)微博主框架-自己定义导航控制器NavigationController
    mysql innodb插入意向锁
    MongoDB实战指南(七):MongoDB复制集之复制集工作机制
  • 原文地址:https://www.cnblogs.com/mjn1/p/12619062.html
Copyright © 2011-2022 走看看