A type parameter can be used as a constraint

using System;
using System.Collections;
public class Test{
public static void Main(){
X<Y, Z> obj=new X<Y, Z>();
}
}
public class Z {
public void MethodA() {
Console.WriteLine("Y::MethodA");
}
}
public class Y: Z {
}
public class X<T1, T2> where T1:T2 {
public void MethodB(T1 arg) {
}
}
Related examples in the same category