泛型的实现和使用

///泛型类实现
public class MyList<T> : CollectionBase //定义类头
{
    public T mt = default(T);//泛型字段
    public MyList() { }
    public T this[int index]
    {
        get { return (T)List[index]; }
        set { List[index] = value; }
    }
    public int Add(T value)  //泛型方法
    { mt = value;return List.Add(value);  }   
}
///泛型类的使用
//定义类
public class AClass{ public string mName = ""; }
public void Test()
{
    MyList<AClass> acList = new MyList<AClass>();
    AClass ac = new AClass();
    ac.mName = "jimy";           
    acList.Add(ac);
    ac = new AClass();
    ac.mName = "jimy2";
    acList.Add(ac);
    Assert.AreEqual(acList.Count, 2);
    Assert.AreEqual(acList[1].mName, "jimy2");
    Assert.AreEqual(acList.mt.mName, "jimy2");
}

 

注:本文字为本人总结后发布,如果有雷同,纯属巧合
本人邮箱:freedomjim@gmail.com,如有疑问和交流欢迎发邮件过来一起讨论,一切成长,谢谢!

posted @ 2010-06-23 11:19  自由之风  阅读(169)  评论(0)    收藏  举报