泛型的基类和接口

象其他的类型一样,泛型也可以定义基类和接口。

注意:当子类实现泛型基类时候,需要指定到底是什么类型。当子类实现泛型基类的abstract或者virtual的方法时候,也要指定类型。

例如:

// A generic class with a virtual method.

public class MyList<T>

{

private List<T> listOfData = new List<T>();

public virtual void PrintList(T data) { }

}

public class MyStringList : MyList<string>

{

// Must substitute the type parameter used in the

// parent class in derived methods.

public override void PrintList(string data) { }

}

当子类也是泛型类的时候,需要保持基类对T的限制。

泛型做接口的用法主要是为不同类型实现一组相同的逻辑。

如定义具有 加剪乘除 方法的接口,可以为实现为float类型,可以实现为int类型等等

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页