Say you have two different classes where each have their own implementation of Equals; which one is used? What if only one of them have one? Or none of them? Are any of the following lines equivalent?
object .Equals( first, second )
first .Equals( second )
second .Equals( first )
I'm guessing that the first two might be equivalent, but I don't really have a clue.
What does it really do?