为什么执行TestMethod<T>(params T[] input)
方法而不是执行TestMethod(object input)
。我很困惑为什么编译器执行通用方法。.net 框架上是否有任何优先级层次结构?
class TestClass
{
static void Main()
{
TestMethod("Hello World");
}
static void TestMethod(object input)
{
Console.WriteLine("object");
}
static void TestMethod<T>(params T[] input)
{
Console.WriteLine("params T[]");
}
}