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

烟台福山网站建设中国互联网公司排名2023

烟台福山网站建设,中国互联网公司排名2023,米拓建站下载,wordpress 显示备案信息委托 方法的容器:委托可以存储一个或多个方法的引用。可以使用委托对象来调用这些方法。函数/方法的变量类型:委托类型可以像变量一样声明和使用,存储方法的引用。存储、传递方法:委托可以作为参数传递给方法,也可以作…
委托
  1. 方法的容器:委托可以存储一个或多个方法的引用。可以使用委托对象来调用这些方法。
  2. 函数/方法的变量类型:委托类型可以像变量一样声明和使用,存储方法的引用。
  3. 存储、传递方法:委托可以作为参数传递给方法,也可以作为方法的返回值。这使得方法可以接收其他方法作为参数,或返回方法。
  4. 本质是一个类:每个委托类型在编译时都会生成一个类,继承自 System.Delegate 或
    System.MulticastDelegate。这个类提供了 Invoke 方法,用于调用委托所指向的方法。
事件

与委托使用方法一样
不同点:事件不可以在外部被调用,不可以在外部置空
只可以在外部进行+=、-=的操作

 public class Card  {public Card(){Test.MAC?.Invoke();Test.MAC_args?.Invoke("ABS");}}sealed class Test{public static MyAction MAC;public static MyActionWithArgs<int,string> MAC_args;public Test(){MAC += () => { };//lambda表达式MAC += delegate {  };//匿名函数MAC_args += (str) =>{Debug.LogError(str);return 1;};MAC_args += delegate(string str) { Debug.LogError(str); return 1;};}}public delegate void MyAction();public delegate T MyActionWithArgs<T,K>(K k);//有参有返回

协变

1、out 修饰的泛型类型 只能作为返回值,不能作为参数(如Func)
2、父类泛型委托容器可以装子类泛型委托容器(如下方法)

 public class CovarianceClass{delegate T Covariance<out T>();public CovarianceClass(){Covariance<Son> son = () => { return new Son();};Covariance<Father> father = son;//父类容器装子类容器,协变}}public class Father{}public class Son : Father{}

逆变

1、in 修饰的泛型类型,表示只能作为参数,不能返回(如Action)
2、子类泛型容器可以装父类泛型容器(如下方法)

 public class ContravarianceClass{delegate void Contravariance<in T>(T t);public ContravarianceClass(){Contravariance<Father> father = (t) => { };Contravariance<Son> son = father;//子类容器可以装父类容器,逆变}}public class Father{}public class Son : Father{}

typeof

用于获取Type

   public enum SpAtlasEnum{Cards_00,}SpAtlasEnum A = (SpAtlasEnum)Enum.Parse(typeof(SpAtlasEnum),"Cards_00");//可以转换string为枚举,需要反射SpAtlasEnum B = (SpAtlasEnum)0;//直接将int转为枚举,性能最佳

Type

dll一般需要运行过才会生成

        public GameManager(){Assembly assembly = Assembly.LoadFrom(@"C:\Users\Administrator\RiderProjects\ClassLibrary1\ClassLibrary1\bin\Debug\net8.0\ClassLibrary1.dll");//找到这个dllType[] assemblyAllInfo = assembly.GetTypes();for (int i = 0; i < assemblyAllInfo.Length; i++){Debug.LogError(assemblyAllInfo[i]);//遍历程序集内的所有内容}//获取这个程序集内的指定类Type reflectionClass = assembly.GetType("Reflection_Namespace.Reflection_Class");//将他实例化object obj = Activator.CreateInstance(reflectionClass);//获取这个类的变量a(未实例化的)FieldInfo fieldinfo = reflectionClass.GetField("a");//设置该变量a指定 实例化的obj  fieldinfo.SetValue(obj,131);//打印实例化的obj的变量a的值Debug.LogError(fieldinfo.GetValue(obj));//同理 获取方法(未实例化的)MethodInfo methodInfo = reflectionClass.GetMethod("Reflection_Method",new Type[]{typeof(string)});//使用该方法指定 实例化后的objDebug.LogError(methodInfo.Invoke(obj, new object[] {"Reflection" })); }}
http://www.yayakq.cn/news/464103/

相关文章:

  • 云主机网站的空间在哪网站制作公司多少钱
  • 7星彩网站开发海口网站制作案例
  • 如何做企业网站方法哪里有做推文的网站
  • 企业网站建设知乎建站网址打不开
  • 响应式模板网站建设系统优化有什么用
  • 网站建设忄金手指专业北京百度seo排名点击器
  • google 网站收录各种资源都有的搜索引擎
  • 高端公司形象墙效果图购物网站seo搜索引擎前期分析
  • 做网站需要用socket吗成寿寺网站建设公司
  • 中山网站制作设计章丘做网站的公司
  • 企业网站制作优化wordpress从指定目录获取文章
  • 潍坊做网站好看电子商务网站建设风格
  • 从化市网站建设wordpress shortinit
  • 一家专做灯的网站招聘室内设计可以去哪些公司
  • 贵州茅台酒股份有限公司网站做计算机网站的总结
  • 在北京网站建设的岗位职责北京网站建设可选兴田德润
  • 北京建设网站兼职普工网站seo优化查询
  • 找单位做网站需要注意什么wordpress 件康
  • 衡阳网站制作公司wordpress所有标签
  • 要建设一个网站需要准备些什么赵公口网站建设北京网站设计
  • 教你免费申请个人网站株洲网站建设企业
  • 网站图标只做那个网站有免费的模板
  • 卖机械设备什么网站做推广好上海网站建设规划
  • 做网站都需要哪些费用买域名哪个网站好
  • 龙华区住房和建设局网站代理注册公司怎么收费
  • 北京网站制作网络推广公司潍坊点睛做网站怎么样
  • 做弹幕网站阿里云网站商城建设
  • 青岛黄岛网站建设公司电话东莞市南城装饰工程东莞网站建设
  • 软件开发网站建设科技有限公司郴州市北湖建设局网站
  • 拓者设计吧网站南京网络推广外包