虚拟的Equals()方法和静态的Equals方法有什么不同?作者: Doublekill 时间: 2014-3-26 21:59
虚拟的Equals()方法
Equals()方法是虚拟的,所以可以在自己的类中重写。
静态的Equals()方法
静态的Equals()方法和虚拟的Equals()方法作用相同,区别是静态版本带有两个参数。静态方法可以处理两个对象中有一个是null的情况。
看例子:
SomeClass x,y;
x = new SomeClass();
y = new SomeClass();
bool B1 = ReferenceEquals(null,null);// return true;
bool B2 = ReferenceEquals(null,x);// return false;
bool B3 = ReferenceEquals(x,y);// return false because x and y point to different objects;