#1,040 – Deriving from a Constructed Type
February 25, 2014 Leave a comment
You can define a generic class that inherits from another generic class, for example:
public class ListPlus<T> : List<T>
You can also derive from a constructed type, rather than a generic type. A constructed type is just a generic type with the type parameters filled in (type arguments provided).
For example:
public class DogListPlus : List<Dog> { public void AddTwoDogs(Dog d1, Dog d2) { base.Add(d1); base.Add(d2); } }
We can then use this new type as follows:
DogListPlus dogList = new DogListPlus(); Dog fido = new Dog("Fido"); Dog bowser = new Dog("Bowser"); dogList.AddTwoDogs(fido, bowser);