在C#中,要覆盖List<T>的Add方法,可以通过继承List<T>类并重写Add方法来实现。以下是一个示例:
using System;
using System.Collections.Generic;
public class CustomList<T> : List<T>
{
public override void Add(T item)
{
// 在这里添加自定义逻辑
Console.WriteLine($"Adding item: {item}");
// 调用基类的Add方法
base.Add(item);
}
}
public class Program
{
public static void Main()
{
CustomList<int> customList = new CustomList<int>();
customList.Add(1);
customList.Add(2);
customList.Add(3);
foreach (int item in customList)
{
Console.WriteLine(item);
}
}
}
在这个示例中,我们创建了一个名为CustomList的泛型类,它继承自List<T>。我们重写了Add方法,以便在调用基类的Add方法之前添加自定义逻辑。在Main方法中,我们创建了一个CustomList的实例,并向其添加了一些元素。运行此程序将输出:
Adding item: 1
Adding item: 2
Adding item: 3
1
2
3
这表明我们已成功覆盖了List<T>的Add方法,并在添加元素时执行了自定义逻辑。
领取专属 10元无门槛券
手把手带您无忧上云