委托

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

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

多播委托

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

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

事件

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

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

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

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

匿名类

  定义:没有名字的类

  特点:匿名类不能被引用  只能在创建时用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

委托 匿名类 var隐式类型 匿名方法相关推荐

  1. Linq原理相关(隐式类型var、匿名类型、实例化类、集合初始化)

    1. var(隐式类型) 例如: var temp ="abc";  //正确, var temp; temp = "abc"      //错误 原因:隐式类 ...

  2. Linq之隐式类型、自动属性、初始化器、匿名类

    目录 写在前面 系列文章 隐式类型 自动属性 初始化器 匿名类 总结 写在前面 上篇文章是本系列的小插曲,也是在项目中遇到,觉得有必要总结一下,就顺手写在了博客中,也希望能帮到一些朋友.本文将继续介绍 ...

  3. 【C#】隐式类型var

    在.NET 3.0后微软引入了隐式类型var,编译器可以自动判断变量的类型,通过var这个隐式类型,可以提高开发人员的开发效率,很多时候可以不考虑对象的类型,编译器会自动帮我们判断 使用隐式类型和使用 ...

  4. C++ 类的隐式转换

    所谓类的隐式转换,就是将实参类型转成形参类型--如果不一致的话. 这个转换与基本类型转换不太一样,具体则是在形参类型的构造函数中使用实参类型的数据,从而构造出一个临时对象. 下面的代码,类Person ...

  5. c# 无法将类型隐式转换_C#中的隐式类型数组

    c# 无法将类型隐式转换 C#隐式类型数组 (C# Implicitly Typed Arrays) Like implicitly typed variables, we can also decl ...

  6. C语言隐式/显式类型转换 | C++四种强制类型转换、类的隐式转换、explicit

    文章目录 C语言类型转换 隐式类型转换 显式类型转换 C++ 强制类型转换 static_cast reinterpret_cast const_cast dynamic_cast 类的隐式类型转换 ...

  7. C#隐式类型和显示类型

    一,在程序中我们经常会遇到:无法将类型"XXX"隐式装换为"XXX",如下例子: static void Main(string[] args){int i;i ...

  8. 匿名类有名字还叫匿名类吗?

    先看代码和里边的问题: class NB{void A(){System.out.println("我是NB");} } class NC{void Y(NB a){a.A();} ...

  9. Adams隐式4阶方法解常微分方程,python实现

    Adams隐式4阶方法解常微分方程,由4阶Runge-Kutta方法提供初值,隐式方法比显式复杂一些,主要是因为需要解方程.这里使用弦截法解微分方程. import math import numpy ...

最新文章

  1. 《你的灯亮着么》五六篇
  2. Grove——.NET中的ORM实现
  3. 很实用的jQuery事件 - toggle() 方法
  4. Docker 修改容器名称
  5. “买苹果辞退,买华为补贴”,这家公司支持国产手机的理由给我惊到了!
  6. 控制自己的贪念,提升自己的能力
  7. C语言中的free函数
  8. 解除移动硬盘或u盘的占用无法安全弹出问题
  9. 安卓设备脱离pc自动化测试,Termux模拟器下python+uiautomator2的环境设置。本人亲测,踩坑总结。
  10. ${pageContext.request.contextPath}的作用
  11. php 腾讯云 文字识别_讯飞语音转文字,图片转文字,效率高还免费
  12. 模态对话框和非模态对话框的区别
  13. win10 office2021+mathtype安装配置
  14. 怎样修改mysql密码
  15. 6个“纽扣”卖2600 索尼动捕设备要捕捉谁?
  16. 当生活真的过得很艰难的时候,你是怎么熬过来的?(内容来自知乎,用于自省)...
  17. python agg函数,python pandas自定义agg函数
  18. Java8之Lambda函数式编程(一)
  19. JAVA JSP城市公交查询系统 jsp公交线路查询系统Java公交查询系统Java公交线路查询
  20. 女生做动画建模师和游戏建模师哪个比较好?前景如何呢??

热门文章

  1. 学习Spring(六) -- Spring中Bean的作用域以及生命周期
  2. MySQL杂记(更新时间——2014.05.23)
  3. 如何处理 Windows Phone 8 动态砖变成黑白砖
  4. android开机启动service
  5. Posterior decompression
  6. 逆向工程(Reverse Engineering)
  7. valid, satisfiable, unsatisfiable的例子
  8. iPad导入Mac:非常快!一气呵成,直接去photo里面选择,之后左上角倒出就好,颠覆之前windows上面的认知!
  9. 我的linkedin profile
  10. 万向节死锁 gimbal lock