【发布时间】:2009-10-05 00:53:53
【问题描述】:
假设这两个对象都不是值类型,并且都表示覆盖了 Equals(...) 方法的类型,那么两者之间是否存在任何功能差异:
- 致电
obj1.Equals(obj2) - 致电
Object.Equals(obj1, obj2)...或者它们在功能上是否相同?
我正在阅读的 Apress 书(Pro C# 2008)实际上非常好,将这种方法(以及 ReferenceEquals(...) )称为“(非常有用的)静态方法”,但我正在努力看看这里的好处。
对于ReferenceEquals(...),我可以看到该实用程序,因为它仍然能够确定两个对象是否引用同一个对象(无论Equals(...) 方法和== 运算符是否已被覆盖)。
对于另一个...不是那么多;我只是在这里遗漏了什么吗?
【问题讨论】:
标签: c# inheritance object equals