C#泛型方法可以调用重载方法吗?

public void func1(ref T b)
{
func2(ref b);//此处报错
}
private void func2(ref Int16 b)
{
b++;
}
private void func2(ref Int32 b)
{
b++;
}
private void func2(ref Single b)
{
b++;
}
.
.
.
这样编译器会报错无法从ref T 转化为ref int16