关于CollectionBase中的继承覆盖问题
在system.collections中有CollectionBase用于生成强类型集合。
abstracte class CollectionBase:IList...{ //CollectionBase继承自IList接口。
protected ArrayList InnerList; //属性
protected IList List; ////属性
.
.
}
interface IList {
int Add(oject value);
.
.
} //IList 是这样定义的
但是CollectionBase中却没有定义或实现int Add(oject value)方法。然而当
class A : CollectionBase {}
A test = new A();
test.Add("xxx"); //是不正确的编译器说没有定义add方法
IList test = new A();
test.Add("xxx"); //是正确的,可以用
这个add是从哪里来的?IList 定义了add方法CollectionBase没有实现这个test.add是从哪里来的?
我若想覆盖test.Add(),我该如何写?