C#程序设计 第3章C#面向对象编程
C# 程序设计 第3章 C#面向对象编程
委托和事件 委托的基本概念 委托的声明 立业知国田 女理解委托的概念, 多 夂掌握委托的定义 女掌握多播委托的使用 々能在编程中使用委托技术 2
2 委托和事件 委托的基本概念 委托的声明、实例化和调用 多播委托 理解委托的概念, 掌握委托的定义 掌握多播委托的使用 能在编程中使用委托技术
委托和事件 委托的基本概念
3 委托和事件 委托的基本概念
什么是委托 如何选择调用 哪种方法? public void GreetPeople(string name){ ∥做某些额外的事情,比如初始化之类, 此处略 EnglishGreeting(name); 分情况讨论 public void EnglishGreeting(stringme){ Console.WriteLine("Morning,"n swith(lang){ case英语: public void ChineseGreeting(string name) EnglishGreeting(name); Console.WriteLine("早上好,"+name; break; case中文: ChineseGreeting(name); break: int var=int.Parse("90"); 数据作为参数传递给方法 4
4 什么是委托 public void GreetPeople(string name) { // 做某些额外的事情,比如初始化之类,此处略 EnglishGreeting(name); } public void EnglishGreeting(string name) { Console.WriteLine("Morning, " + name); } public void ChineseGreeting(string name){ Console.WriteLine("早上好, " + name); } 如何选择调用 哪种方法? 分情况讨论 swith(lang){ case 英语: EnglishGreeting(name); break; case 中文: ChineseGreeting(name); break; int var = int.Parse(“90”); } . 数据作为参数传递给方法
什么是委托 问题 GreetPeople("张三"); ■ 如果某个方法要对另一个方法进行操作,能把第二个 方法作为参数传递给第一个方法吗? 如何定义该类型 public void GreetPeople(string name,MakeGreeting){ ∥做某些额外的事情,比如初始化之光,此处略 MakeGreeting(name), public void EnglishGreeting(string name){ Console.WriteLine("Morning,"name); public void ChineseGreeting(string name){ Console.WriteLine("早上好,"+name;
5 什么是委托 public void GreetPeople(string name, 类型 MakeGreeting) { // 做某些额外的事情,比如初始化之类,此处略 MakeGreeting(name); } public void EnglishGreeting(string name) { Console.WriteLine("Morning, " + name); } public void ChineseGreeting(string name){ Console.WriteLine("早上好, " + name); } 如何定义该类型 GreetPeople("张三"); . ▪ 如果某个方法要对另一个方法进行操作,能把第二个 方法作为参数传递给第一个方法吗?