cl a,b;
a=new cl();
b=new cl();
bool bl=ReferenceEquals(a,b);ReferenceEquals()是Object的静态方法,为何可以直接调用而不是Object.ReferenceEquals()?

解决方案 »

  1.   

    Object 是所有类型的基类 继承了下来
    所以不用 Object.ReferenceEquals()
    在任何一个类下可以直接使用 ReferenceEquals()
      

  2.   

    MSDN:Object 类支持 .NET Framework 类层次结构中的所有类,并为派生类提供低级别服务。这是 .NET Framework 中所有类的最终基类;它是类型层次结构的根。
      

  3.   

    一句话..Object是一切类的基类..ReferenceEquals是Object类的一个静态方法..而任何类都是继承Object基类的..所以任何类中都有ReferenceEquals这个静态方法..不知是否明白..
      

  4.   

    举个简单的例子:
    基类A有一个方法public static void test();
    类B继承A,那B自然就继承了A中的test方法..class Program
        {
            static void Main(string[] args)
            {   
                //B继承A的Test方法,所以可以直接调用..                    
                B.test();
            }
        }    class A
        {
            public static void test()
            {
                Console.WriteLine("haha");
            }
        }
        class B : A
        {
     
        }