委托 匿名类 var隐式类型 匿名方法

委托

  委托是一个类  它定义了方法的类型  实现了讲一个方法当做另一个方法的参数来传递

   (委托的一个有趣且有用的属性是,他不知道也不关心所引用的方法的类 只关心引用的方法是否具有与委托相同的参数和返回类型)

多播委托

  每个委托都只包含一个方法调用  调用委托的次数和调用方法的次数相同。如果需要调用委托的一次可以执行多个方法  这时我们就需要多播委托

  通俗来讲  多播委托就是一个包含多个方法的委托称为多播委托

事件

  基本上说是一个用户操作  如按键 点击 鼠标移动等等  或者是一些出现 如系统生成的通知  应用程序需要在事件发生时响应事件

    事件在类中声明且生成  且通过使用同一个类或者其他类中的委托与事件处理程序联  包含的事件的类用于发布事件  这被称为发布器类  其他接受该事件的类被称为订阅器类

    发布器是一个包含事件和委托定义的对象。事件和委托之间的联系也定义在这个对象中。发布器类的对象调用这个事件,并且通知其他对象

    订阅器是一个接受事件并且提供事件处理程序的对象  在发布器类中的委托调用订阅器类中的方法(事件处理程序)

 

匿名类

  定义:没有名字的类

  特点:匿名类不能被引用  只能在创建时用new语句来声明

优势

  匿名类提供了一种方便的方法  可用来将一组只读属性封装到单个对象中  而无需首先显示定义一个类型

  类型名由编译器生成  并且不能再源代码级使用 每个属性的类型由编译器判断

  可通过使用new运算符和对象初始值创建匿名类型

  匿名类型通常用在查询表达式的select子句中  一遍返回原序列中的每个对象的属性子集

 

var隐式类型

  隐式类型var  声明变量  是无须指定数据类型 编译器会根据赋值判断其数据类型的一种机制

优势:

  通过var这个隐式类型  可以提高开发人员的开发效率  很多时候可以不考虑对象的类型  编译器会自动帮助我们判断

使用规则:

  1.var类型会被编译器根据初始值的类型推断出具体的类型

  2.var类型的局部变量必须赋予初始值

  3.无法将null赋值给隐式类型的额局部变量

  4.var类型变量的定义必须是在方法中或者在属性get set访问器中

  5.var不能用作方法的参数

  6.不能当做返回值类型

  7.语句中值声明一次变量  声明后不能改变类型

 

匿名方法

  C#2.0引入的一个新特性  它允许开发者内联inline声明自己的函数代码而无须使用委托函数

应用场景

  1.需要一个临时方法, 该方法使用次数极少

  2.这个方法的代码很短, 甚至可能比方法声明都短的情况下使用

 

转载于:https://www.cnblogs.com/-zillb/p/11172661.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值