none
IList与List的区别 RRS feed

答案

  • 请详细列举IList与List的区别!

    IList是接口,而List是具体实现了该接口的类。

    换句话说——IList不能通过实例化直接使用(IList没有具体的方法实现等,只是定义了实现这个接口就必须要遵守的一切“契约”——即要实现多少方法,只是提供了对外告知的功能列表而已,具体是实现这个接口的类来实现,和接口混合使用以达到“延迟加载”的目的)。但是List可以直接使用。

    另外,IList没有泛型参数(是所有object类型集合的总的一个实现接口),而List肯定是泛型的(原型:List<T>)。


       QQ我:讨论(Talk)
    下载MSDN桌面工具(Vista,Win7)
    我的博客园
    慈善点击,点击此处

    2012年4月10日 1:43

全部回复

  • List<T>是實作IList<T>介面的一種清單集合,兩者的差別或許你可以從介面的特性來區別兩者的差異,介面是用來定義類別或結構的框架,本身無法被存取必須被實作才可以使用介面所定義好的結構。而List<T>正是可以使用IList<T>介面所定義的結構,來對清單中的強行別做操作(加入、刪除、排序等)。


    以上說明若有錯誤請指教,謝謝。
    http://www.dotblogs.com.tw/terrychuang/

    2012年4月9日 14:53
  • 请详细列举IList与List的区别!

    IList是接口,而List是具体实现了该接口的类。

    换句话说——IList不能通过实例化直接使用(IList没有具体的方法实现等,只是定义了实现这个接口就必须要遵守的一切“契约”——即要实现多少方法,只是提供了对外告知的功能列表而已,具体是实现这个接口的类来实现,和接口混合使用以达到“延迟加载”的目的)。但是List可以直接使用。

    另外,IList没有泛型参数(是所有object类型集合的总的一个实现接口),而List肯定是泛型的(原型:List<T>)。


       QQ我:讨论(Talk)
    下载MSDN桌面工具(Vista,Win7)
    我的博客园
    慈善点击,点击此处

    2012年4月10日 1:43