码迷,mamicode.com
首页 > 其他好文 > 详细

IList与List的区别

时间:2017-11-25 13:10:25      阅读:92      评论:0      收藏:0      [点我收藏+]

标签:逻辑   就是   使用场景   建立   不同   相关   分离   strong   new   

List是一个类(Class),IList是一个接口(Interface),不能被实例化,只能用 IList <T> myIList =new List <T>(); 

List <Class1> List11 =new List <Class1>(); 创建一个List <Class1>,而且需要使用到List <T>的功能,进行相关操作。

IList <Class1> IList11 =new List <Class1>();创建一个基于接口IList <Class1>的对象的实例,只是这个接口是由List <T>实现的。它只是希望使用到IList <T>接口规定的功能而已。

 使用场景:
IList:当你建立一个方法,希望可以接收不同类型的参数时,建议用接口,当然你得考虑内部的逻辑是不是可以通过接口解决,如果还要进行数据分析或者别的什么,就是接口满足不了的时候,还是老老实实的用会具体的参数。

List<T>:做方法返回值很合适,因为要对结果进行迭代、分析、查询等等,它都能满足你,还不用你转来转去,减少装箱拆箱。

鼓励使用接口 ,这样可以实现功能和具体实现的分离 (接口实现松耦合,有利于系统的维护与重构),实现接口分离的原则 ,不是看实际需要用的。


 




 



IList与List的区别

标签:逻辑   就是   使用场景   建立   不同   相关   分离   strong   new   

原文地址:http://www.cnblogs.com/chenh/p/7894852.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!