6.20 委托

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5
 6 namespace 委托
 7 {
 8     public delegate int aa(int a,int b);
 9     class Program
10     {
11         static void Main(string[] args)
12         {
13             /*fangfa bb = new fangfa();
14               aa cc = bb.jiafa;*/  //原始写法
15             aa cc = new fangfa().jiafa;//简化写法
16             //方法必须与委托结构一样才可以委托,例如此处二者都是int类型
17             //加法
18             int a = cc(5, 6);
19             Console.WriteLine(a);
20             //减法
21            aa dd = new fangfa().jianfa;
22             a = dd(5, 6);
23             Console.WriteLine(a);
24
25              //混合运算
26             a = cc(5, 4) - dd(5, 4);
27             Console.WriteLine(a);
28
29
30             Console.ReadLine();
31             //委托:获取动作执行函数,例如获取点击鼠标的动作,执行一个函数
32             //委托就是代理,点击事件是一种特殊的委托,特殊在可以接收用户的动作
33
34         }
35
36     }
37 }
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5
 6 namespace 委托
 7 {
 8     class fangfa
 9     {
10         public int jiafa(int a, int b)
11         {
12             return a + b;
13         }
14         public int jianfa(int a, int b)
15         {
16             return a - b;
17         }
18     }
19 }

				
时间: 2024-10-15 10:57:42

6.20 委托的相关文章

c#委托声明实例化与调用

系统访问数据或调用方法有两种操作方式:一种是通过名称访问或调用,另一种是通过所在的内存地址来访问调用.为了系统的安全与稳定,NET Framework的CLR库不允许程序通过指针来直接操作内存中数据或方法,而是通过托管机制来访问内存中数据或调用内存中的方法.委托就是C#提供的一种以托管机制调用方法的特殊数据类型,其作用于房屋租凭中介机构类似. 下面我们要所的主要围绕以下三点 //1.定义委托 //2.委托的实例化 //3.委托的调用,实际上是将委托指向已经实现的某个方法 //注意:调用的方法必须

[.net 面向对象编程基础] (21) 委托

[.net 面向对象编程基础] (20)  委托 上节在讲到LINQ的匿名方法中说到了委托,不过比较简单,没了解清楚没关系,这节中会详细说明委托. 1.什么是委托? 学习委托,我想说,学会了就感觉简单的不能再简单了,没学过或都不愿了解的人,看着就头大,其实很简单.委托在.net面向对象编程和学习设计模式中非常重要,是学习.net面向对象编程必须要学会并掌握的. 委托从字面上理解,就是把做一些事情交给别人来帮忙完成.在C#中也可以这样理解,委托就是动态调用方法.这样说明,就很好理解了. 平时我们会

C#学习之------委托

1.向窗体中添加控件的最少步骤:                 窗体的句柄为this private System.Windows.Forms.Button button1;                //声明button类变量button1 this.button1 = new System.Windows.Forms.Button();       //创建button对象,其(name属性)句柄为button1-----实例化 this.Controls.Add(this.butto

C#委托------匿名方法

namespace out_ref { //委托匿名方法 public delegate void Myadd(); class Program { static void Main(string[] args) { Say(delegate() { Console.WriteLine("哈哈,就是这么帅!"); }); Console.ReadKey(); } static void Say(Myadd myadd) { myadd(); } } } //委托匿名方法 求两个数之和

Objective-C的基础语法总结

1.NSLog(@“hello world!”);//打印语句的函数,需要打印的字符串放在@之后. NSLog(@“are %d and %d different?%@”,4,4,@”YES”); 2.方括号有两个作用: 1)访问数组元素 2)用于通知某个对象执行什么,在方括号内第一项是对象,其余部分是需要对象执行的操作.例如,[shape draw]的含义为通知shape执行draw方法. 3.方法调用:类名 方法名:参数 注意:如果方法使用参数,则需要冒号:否则不需要冒号. 4.类的编写:

java代理Proxy

首先是静态代理: 1 public class Test1 { 2 3 public static void main(String[] args) { 4 IA a = new APoxy(new A()); 5 a.doJob(); 6 } 7 8 } 9 //功能接口 10 interface IA{ 11 public void doJob(); 12 } 13 //委托类 14 class A implements IA{ 15 16 @Override 17 public void

C#设计模式--观察者模式(发布-订阅模式)

0.C#设计模式--简单工厂模式 1.C#设计模式--工厂方法模式 2.C#设计模式--抽象工厂模式 3.C#设计模式--单例模式 4.C#设计模式--建造者模式 5.C#设计模式--原型模式 6.C#设计模式--设配器模式 7.C#设计模式--装饰器模式 8.C#设计模式--代理模式 9.C#设计模式--外观模式 10.C#设计模式--桥接模式 设计模式: 观察者模式(Observer Pattern) 简单介绍: 观察者模式(Observer Pattern)是设计模式中行为模式的一种,它解

objective-c学习笔记2

Objective-c学习笔记 1.cocoa的对象初始化一般使用alloc和init两个方法,不适用new,其中alloc用于分配内存,init用于初始化,因为初始化方法返回的对象可能和分配的对象不同,如下 [[类名 alloc] init] 2.初始化方法init的编写一般会用到super关键字,因为初始化对象之前必须先初始化父类,并检查父类的初始化是否成功,如下 if(self = [super init]){dosomething}//这一句说明返回的不是nil,可以继续进行下去 els

梳理delegate相关概念

一.前言 可能项目规模较小,项目中除了增删改查就只剩下业务流程,以前都没怎么弄明白的东西时间长了就越发的模糊了... 二.使用场景 MSDN:delegate 是一种可用于封装命名或匿名方法的引用类型. 委托类似于 C++ 中的函数指针:但是,委托是类型安全和可靠的. 匿名方法 1 static void Main(string[] args) 2 { 3 TestAnonymousMethod(delegate(string i) { return Convert.ToInt32(i); })