【转载】#323 - A Generic Class is a Template for a Class

A generic classs is a class that takes one or more type parameters, which it then uses in the definition of the class. It can be thought of as a template for a class.

1 public class ThingContainer<TParam>
2 {
3   private TParam theThing;
4 
5   public void SetThing(TParam newValue)
6   {
7     theThing = newValue;
8   }
9 }

You use a generic class by specifying a type for each of the type parameters.

1 ThingContainer<int> intContainer = new ThingContainer<int>();
2 intContainer.SetThing(5);
3 
4 ThingContainer<Dog> dogContainer = new ThingContainer<Dog>();
5 dogContainer.SetThing(new Dog("Kirby", 5));

In this example, we use a generic class to store an object of an arbitary type. We use one version of the class to store an int and another to store a Dog. Notice that wherever we use the name of the generic class to define an instance, we need to supply a typename (e.g. int, Dog) as a parameter.

原文地址:#323 - A Generic Class is a Template for a Class

posted on 2014-03-11 10:53  yuthreestone  阅读(277)  评论(0编辑  收藏  举报

导航