动态传入泛型类

Posted luhe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了动态传入泛型类相关的知识,希望对你有一定的参考价值。

有这样的场景,对于泛型参数T需要在运行时传入,如下面的T

public class AnimalContext<T>
{
    public DoAnimalStuff()
    {
        //AnimalType Specific Code
    }
}

用一般方式是不可行的,因为T是在编译时确定的。

可以用反射来实现。

var type = typeof(AnimalContext<>).MakeGenericType(typeA.GetType());
var typeA_Context = Activator.CreateInstance(type);

 

以上是关于动态传入泛型类的主要内容,如果未能解决你的问题,请参考以下文章

泛型类派生子类

(不要小瞧数组)玩转数据结构之数组,手写动态数组(Java)

JAVA泛型_泛型类接口通配符方法上下边界

JavaSE-泛型

C#关于反射创建泛型类

关于泛型,什么是泛型,如何理解泛型,直接上代码举例