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