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);
                }
            }
        }
    }
    

      

  • 相关阅读:
    Android 下压缩图片—微弱失真
    android中ViewHolder通用简洁写法
    Android裁剪固定大小头像的功能
    Android进度加载的Loading效果
    GitHub开源项目总结
    Android 实现emoji表情的demo
    vim 高级使用技巧第二篇
    android apk 防止反编译技术第一篇-加壳技术
    Android Metro风格的Launcher开发系列第二篇
    FFMPEG高级编程第一篇:环境搭建及编译
  • 原文地址:https://www.cnblogs.com/mjn1/p/12619062.html
Copyright © 2011-2022 走看看