泛型
来源:互联网 发布:酷听说软件下载 编辑:程序博客网 时间:2024/06/04 17:54
参考博客c#之泛型详解
参考书籍《c#高级编程》(第七版)
1.性能
泛型在使用的过程中不用装箱和拆箱,更加节省性能。
例如List和ArrayList比较,List实用了泛型了,比ArrayList更加节省性能。
2.类型安全
泛型在使用时就规定了参数的类型,在类型上更加安全,能在编译时发现错误。
3.二进制代码的重用
泛型可以更好的重用二进制代码。泛型类可以定义一次,并且有许多不同类型的实例化。
4.命名约定
(1).无任何特殊要求
泛型类型的名称用字母T作为前缀
只是用了一个泛型类型就可以使用字母T作为泛型类型的名称
//泛型列表public class List<T>{}
(2).有特殊要求(必须实现一个接口或者派生自基类),或者使用了两个或者多个泛型,就应该给泛型使用描述性名称。
public delegate TOutput Converter<TInput,TOutput>(TIntput from);public class SortedList<TKey,TValue>{}
5.使用泛型模拟栈(c#)
public class Stack<T> { private T[] m_item; public T Pop(){...} public void Push(T item){...} public Stack(int i) { this.m_item = new T[i]; }}
6.泛型类型
泛型类型包括常用的泛型类、接口、方法和委托,可以通过进一步定制泛型类型的default关键字和类型约束使用泛型技术。协变和抗变这两种形式的变体为泛型提供了更大的灵活性。
7.泛型类的实现及使用(c#)
using System;class Test<T>{ T obj; public void F(T t){ obj=t; Console.WriteLine("泛型类Test的一个参数的方法F():"+t.ToString()); } public void F(){ Console.WriteLine("泛型类Test的无参数方法F()。"); } }Class Program{ static void Main(string[] args) { Test<Program> t1=new Test<Propgram>(); Test<string> t2=new Test<string>(); t1.F(); t2.F("Hellow!"); t3.F(10); }}
阅读全文
0 0
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- 泛型
- Excel批量导入power designer
- spring boot配置tomcat部署(12.24修改)
- Java并发编程:volatile关键字解析
- Redis学习笔记之八:Redis的事务
- 第5章:基元类型、引用类型和值类型
- 泛型
- SQL 经典五十道题
- Linux串口中的超时设置
- 公司已封装easyUi下拉框,组合框
- [App] rhel7 下 Weblogic12c 集群配置
- 近似算法
- 微服务革命-如何打破传统应用的数据库?
- Unity itween插件的使用法法整理
- Tips:无线连接ADB