泛型+反射
泛型
object : 1、任何父类出现的地方,都可以用子类来代替;2、object是一切类型的父类。3、装箱(值从栈复制到堆里)拆箱(堆复制到栈里),性能问题,安全问题
2.0才出现的泛型 T 泛型方法: 声明的时候可以不指定类型,使用的时候指定类型;
泛型在编译器编译时不确定类型,占位符表达;机器码的时候类型已确定,在CLR用指定的类型把占位符替换掉了。
泛型缓存
缓存:把数据存起来,下次直接用上次的结果。
静态字段缓存,静态属性常驻内存。
Webservice wcf 不支持泛型:服务在发布的时候 参数类型需要确认好.
泛型方法 public void A<T>(T t) {}: 为了一个方法满足不同的类型的需求
泛型类 public class A<T> List<T>{} : 为了一个类满足不同类型的需求
public class AChild<T1,T2>: A<T1>,B<T2>{}
泛型接口 public interface A<T> {}: 一个接口满足不同类型的需求
泛型委托 public delegate void A<T> {}: 一个委托满足不同类型的需求
泛型约束
public void A (T t){} 没有约束,任何参数都能传递进来,不安全。
基类约束:public void A (T t) : where T:BaseModel{}:可以把T当作基类--权利;传入
原文地址:https://blog.csdn.net/qq_25966587/article/details/140527736
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!