一,泛型
储存特定的数据类型,在编译阶段检查数据类型正确性。当前存入的数据是什么类型就以什么类型存储,不会转换为Object类型存储,不需要装箱操作
特点:
1、泛型的类型是安全的,能在程序编译阶段发现错误
2、使用泛型能够避免装箱和拆箱操作,提升性能
在c#中我们可以定义泛型类,泛型接口,泛型方法,泛型委托
//泛型类
//简单的泛型类 public class MyClassTemplate<T, U>where T:struct { private T t1; public T T1 { get { return t1; } set { t1 = value; } } private U u1; public U U1 { get { return u1; } set { u1 = value; } } //构造函数 public MyClassTemplate(T t1,U u1) { this.t1 = t1; this.u1 = u1; } public void Print() { Console.WriteLine(t1); } }
//泛型接口
//泛型接口 interface MyInterfaceTemplate<T,U> { void PrintTU(T t1, U u1); }
//泛型方法
//简单的泛型函数 public class Myfun { //泛型函数 public static void TempleteFun<T, C>( T x, C y) { T t1 = x; C c1 = y; Console.WriteLine(t1); Console.WriteLine(c1); } }