泛型--datatable TO List

来源:互联网 发布:notepad 美化sql 编辑:程序博客网 时间:2024/06/05 14:24

写在前面

学习中多多交流,还是有些稚嫩,没有认识到自己可以从别人身上学到很多的东西。心智的成熟需要一点点的时间。故事的情节是这样的,重构中查询信息的部分,当我美美的敲完了,我很傲娇的跟师哥说,来看看我敲的吧,看看有什么要提高的~(其实是想被夸奖),结果呢?师哥的一句话,我就心情就像黑白电视了:“你是把什么传到B层的?(看都不看就问了一句)”“Datatable 啊,我很高兴了~”“行吧,回去查吧,这个不行,得用泛型,自己查吧~”好吧,试求我的心里阴影面积,于是,这篇博客就出来了。

什么是泛型

泛型的一般定义是包含类型参数的类型,泛型的参数只可以代表类,不能代表个别对象。

其中我看到有一个人说的对泛型的理解,我看了之后有一些体会,这里分享给大家。泛型的本质是参数化类型,也就是操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中。泛型是后来才引入的,在没有泛型之前,人们通过对Object的引用来实现参数的任意化,对于这种强制转换出现错误的情况下,编译器可能不提示错误,在运行的时候才出现异常。

用途

虽然我们对泛型这个次可能有点陌生,其实我们用过这个的,想起设计模式中的集合了吗?有网友说,泛型把同一个对象类型放在一起,可以理解成编队,我认为这个说的挺有道理的。当编队之后我们可以遍历这些对象,统一操作。

使用

泛型的使用也有一些规则,虽然我现在用的不多,不过提前了解也是挺好的:

  1. 泛型的类型参数只能是类类型(包括自定义类型)不能是简单类型。
  2. 同一种泛型可以对应多个版本,不同版本的泛型类型是不兼容的。
  3. 泛型的参数可以有多个。
  4. 泛型的参数类型可以使用extends语句,例如,习惯上称为“有界类型”。
  5. 泛型的参数类型还可以是通配符类型。

我们使用泛型的使用,现在常用的是Ilist list = new list,慢慢的积累,不断的学习,很多是有都是学的多了,然后知识才能融会贯通。

优点

泛型往往可以消除代码中的强制转换,同时获得一个附加的类型检查层,该检查层可以防止有人将错误类型的键或值保存在集合中,这就是泛型。

  1. 类型安全。我们知道使用泛型变量的类型限制,编译器可以验证类型假设,如果没有泛型,这些假设估计会写在注释里面了。
  2. 消除强制类型转换。泛型的一个附带好处使得可读性增加,并且减少了出错机会。
  3. 潜在的性能收益。泛型为较大的优化代开可能,泛型的实现方式,支持泛型不需要类文件的更改,所有工作都在编译器中完成。

碎碎念

之前的泛型在我的脑子里就像最近的雾霾似的,不过慢慢了解之后,发现总会有天晴的时候。还有不得不说的是,毕业论文和考试维护结束之后,自己每天学习,真的很开心呐,加油!

1 0
原创粉丝点击