猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
求解释关于c#语法的一些含义,分别是泛型,委托,反射?
c#的泛型,委托,反射是什么,请高手简单说明一下并举个简单扼要的例子?要代码,谢谢回答!
当年话下
浏览 212
回答 2
2回答
萧十郎
反射 : Reflection1. 基类调用派生类时候用2. 在运行时才确定要调用哪个类的时候用3. 在运行期 获取 模块 程序集 类 构造函数 属性方法的信息 以及实例化类,调用构造函数,属性,方法,事件,委托等……通过对类型动态实例化后,还可以用反射对其执行操作4. 如果在写代码的时候就能确定要调用的是哪个类,那直接调用当然好了。但很多场合(也许是为了通用性),要在运行期才能够决定需要调用的类型,那样就有必要用反射来取得类型的相关信息了简单来说就是用string可以在runtime为所欲为的东西,实际上就是一个.net framework内建的万能工厂------------------------------------------------------------------------------------------------------------------------------------------------------------泛型 :1. 减少装箱拆箱,性能高 2. 类型安全 3. 工作效率提高可是谁知道怎么简单的描述他?减少装箱拆箱的技术,什么是装箱,从物理上说是:把堆栈上的对象复制到堆上也可以说将值类型(全部继承自system.ValueType)转换为引用类型,反之叫拆箱那什么是值类型,引用类型?整数类型,浮点类型,布尔类型,枚举类型,结构体类型,字符类型叫值类型字符串类型,OBJECT类型,类类型,数组类型,委托类型,接口类型叫引用类型什么是堆栈,什么是堆?正在研究中…………------------------------------------------------------------------------------------------------------------------------------------------------------------缓存 - 缓存依赖 :1. 当用户再次访问这个网页的时候,被格式化好的HTML会被直接送显。 速度快,直接存在内存中2. 依赖于数据源,数据源发生更改时重新生成缓存,数据源可以是文件,数据库等一般来说优化网站时候用--------------------------------------------------------------------------------------------------------------------------------------------------------------委托 :1. 委托是可以申明的类型,方法看做委托的实例 ,所以说方法可以传递滴!(将方法作为参数传递),可以避免在程序中大量使用If-Else(Switch)等语句,同时使得程序具有更好的可扩展性。2. 使用委托可以将多个方法绑定到同一个委托的变量上( += 或 -=)3. 一个事件不管是不是声明为public,但是它实际上都是private,私有变量是不可以直接用等号(=)的,也就是说事件用=号来绑定一个函数是不好滴所有一般用封装了的 += , -= 实际上 += ”对应 add_XXX()方法, “-=”对应 remove_XXX()方法。4. 返回值都为void如果定义了返回值,那么多个订阅 者的方法都会向发布者返回数值,结果就是后面一个返回的方法值将前面的返回值覆盖掉了,因此,实际上只能获得最后一个方法调用的返回值。5.委托相当于C中的指针,它是类型安全的委托相当于老板,老板可以随意支配许多员工做事,也可以解雇员工,一个委托也可以绑定N多函数,也可以取消一些绑定
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
C
typedef入门问题
1 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续