我注意到其他开发人员使用这种技术,但它总是让我感到困惑。我决定今天早上进行调查,并在 MSDN 上发现了以下内容(来自http://msdn.microsoft.com/en-us/library/d5x73970(v=vs.100).aspx):
public class GenericList<T> where T : Employee
{
...
}
为什么我们要使用这个方法而不是用 Employee 替换类中的所有 T 实例?对我来说,这似乎是可维护性的胜利。我可以将限制接口理解为包含来自不同继承层次结构的类的一种方法,但是继承已经以更明显的方式解决了上述问题,不是吗?
这可能被认为是一个错误,还是像这样“修复”代码是一个错误?