区别
-
List
类:表示可通过索引访问的对象的强类型列表,提供用于对列表进行搜索、排序和操作的方法。类是负责功能的实现。List去构造数据。 -
IList
接口:表示可按照索引单独访问的一组对象。接口负责功能的定义。IList 接口定义了一些操作方法这些方法要你自己去实现。IList接收数据,因为IList本身是一个泛型接口,不具备实例化的能力。
IList优点
-
接口实现松耦合,有利于系统的维护与重构,优化系统流程。
-
鼓励使用接口,这样可以实现功能和具体实现的分离。
-
接口解耦:让业务逻辑实现起来更通用,因为数据层可能会返回不同泛型
IList缺点
如果仅仅是作为集合数据的承载体,就可以用IList
什么时候使用IList
当只想使用接口的方法时,用 ILis<>。因为它不获取实现这个接口的类的其他方法和字段,有效的节省空间
使用场景
因为List比IList拥有更多的方法,所以:
如果仅用来做数据集合,用IList;如果还需要更多的对集合进行操作,用List。