c#中泛型参数与object参数导致重写无效。
今天在写程序的时候突然发现了这个怪现象
有如下2个方法:
public XmlDocument SerializeToXmlDocument(object obj);
public XmlDocument SerializeToXmlDocument<T>(T obj);
如果按照重写概念,那么这2个方法应该是不同的。
但是实际我在调用SerializeToXmlDocument(object)的时候,发现居然进入了SerializeToXmlDocument<T>(T obj)方法。
恰巧在我的程序里面SerializeToXmlDocument<T>(T obj);又调用了SerializeToXmlDocument(object obj);因此导致死循环,
最后堆栈溢出而亡。
贴出来,希望对他家有用。