当前位置: 首页 > news >正文

网站数据diy科技制作网站

网站数据,diy科技制作网站,什么软件可以免费发广告,工程建设范围文章目录 前言一、什么是委托#xff1f;二、委托的应用1.使用委托的具体步骤2.委托的类型#xff08;命名方法委托#xff0c;多播委托#xff0c;匿名委托#xff09;① 命名方法委托#xff1a;② 多播委托#xff1a;③ 匿名委托#xff1a; 总结 前言 最近有用到… 文章目录 前言一、什么是委托二、委托的应用1.使用委托的具体步骤2.委托的类型命名方法委托多播委托匿名委托① 命名方法委托② 多播委托③ 匿名委托 总结 前言 最近有用到委托所以重新复习了一下委托的相关知识在此记录一下。 一、什么是委托 委托是C#中的一种引用类型委托的本质是一个类定义了方法的类型是将方法作为参数传递到另一个方法的特殊类。 委托可以认为是持有一个或者多个方法的对象当委托被调用时它持有的方法也会被调用。 委托是方法的抽象它存储的就是一系列具有相同签名和返回回类型的方法的地址。 委托不是对象是一种类型。 二、委托的应用 委托的使用遵循三步走的原则即定义声明委托实例化委托调用委托。 1.使用委托的具体步骤 定义声明委托实例化委托给委托赋值调用委托 一般情况往委托中添加方法其实是往委托的方法列表中添加它是一个包含有序方法列表的对象这些方法具有相同的签名和返回类型。 方法的列表称为调用列表委托保存的方法可以来自任何类或结构。(方法的满足条件委托的返回类型、委托的签名)调用列表中的方法可以是实例方法也可以是静态方法。在调用委托的时候会执行其调用列表中的所有方法。 2.委托的类型命名方法委托多播委托匿名委托 委托可以分为 命名方法委托、多播委托、匿名委托其中命名方法委托是最常见的一种委托。 ① 命名方法委托 定义语法格式 修饰符 delegate 返回值类型 委托名 ( 参数列表 );实例化委托命名方法委托在实例化委托时必须带入方法的具体名称语法如下 委托名 委托对象名 new 委托名 ( 方法名 );委托中传递的方法名既可以是静态方法的名称也可以是实例方法的名称。 需要注意的是在委托中所写的方法名必须与委托定义时的返回值类型和参数列表相同。 在实例化委托后即可调用委托语法形式如下 委托对象名 ( 参数列表 );实例1在委托中注入静态方法 实例2在委托中注入实例方法 ② 多播委托 多播委托是指在一个委托中注册多个方法在注册方法时可以在委托中使用加号运算符或者减号运算符来实现添加或撤销方法。 实例模拟点餐平台预定不同类型的商品 class Program{//定义购买商品委托public delegate void OrderDelegate();static void Main(string[] args){//实例化委托OrderDelegate buy new OrderDelegate(Order.BuyFood);//向委托中注册方法buy Order.BuyCake;buy Order.BuyFlower;//调用委托buy();Console.ReadLine();}}public class Order{//委托方法(返回值和参数必须与定义的委托类型一样)public static void BuyFood(){Console.WriteLine(购买快餐);}public static void BuyCake(){Console.WriteLine(购买蛋糕);}public static void BuyFlower(){Console.WriteLine(购买鲜花);}}结果 在委托注册方法时使用 - 操作符可以撤销委托 在使用多播委托时需要注意在委托中注册的方法参数列表必须与委托定义的参数列表相同否则不能将方法添加到委托上。 ③ 匿名委托 匿名委托是指在使用匿名方法注册在委托上实际上是在委托中通过定义代码块来实现委托的作用。语法格式如下 //1. 定义委托 修饰符 delegate 返回值类型 委托名 ( 参数列表 );//2. 定义匿名委托 委托名 委托对象 delegate {//代码块 };//3. 调用匿名委托 委托对象名 ( 参数列表 );实例使用匿名委托计算长方形的面积 class Program {//定义委托public delegate void AreaDelegate(double length,double width);static void Main(string[] args){Console.WriteLine(请输入长方形的长);double length double.Parse(Console.ReadLine());Console.WriteLine(请输入长方形的宽);double width double.Parse(Console.ReadLine());AreaDelegate area delegate{Console.WriteLine(长方形的面积为 length * width);};area(length, width);Console.ReadLine();} } 结果 由于匿名委托并不能很好地实现代码的重用匿名委托通常适用于实现一些仅需要使用一次委托中代码的情况并且代码比较少。 总结 以上就是我对C#中有关于委托的相关知识整理希望对大家有所进步如有不对的地方也请不要怪罪哦 参考https://blog.csdn.net/luan0125/article/details/122957212
http://www.dnsts.com.cn/news/100895.html

相关文章:

  • 网站建设应遵守的原则西安房产网58
  • 深圳中瑞建设集团官方网站贵州做网站公司
  • 网站建设业务范围网站服务是什么
  • 招聘网站建设人员有深度网站
  • 佛山企业网站设计制作用名字做壁纸网站
  • 郑州网站建设(智巢)wordpress分享qq插件下载
  • 开淘宝的店铺网站怎么做查域名备案
  • 成都分销商城网站建设wordpress的意思和读音
  • 南京英文网站建设中国互联网十大巨头公司
  • 做网站前台用什么问题wordpress做首页
  • 哪个网站ppt模板免费下载京东网站建设的意义
  • 十年前网站开发语言韩式风格的网页设计欣赏
  • 三门峡住房城乡建设局网站wordpress模板怎么添加菜单
  • wordpress查看站点企业宣传册版式设计
  • 音响网站模板往国外卖货的平台
  • 推广网站哪家做的好五金店网站模板
  • 做名片的网站叫什么来着网页设计说明书1000字
  • 做网站有包括哪些东西域名注册商排名
  • 精品资料网官方网站长春网络公司十大排名
  • 广州专门做网站目前网站开发状况
  • 教学网站建设 效益网站备案作用
  • 旅游网站的建设论文自己做的网站怎么赚钱
  • 温州手机网站推广wordpress 后台 重定向循环
  • 自助手机建站系统门户网站建设公司教程
  • 南昌网站建设好么移动应用开发公司网站模板
  • 门户网站域名是什么西安企业做网站
  • 上海网站建设学校延吉网站开发公司
  • 深圳精品网站建设公司源码网棋牌
  • 郑州购物网站建设英文网站模板改成中文
  • 太原做网站的海南响应式网页建设方案