Object类是C#语言中最原始、最重要的类,是所有类的“祖先”,每个c#类都是它的子类,它实现了每个类都必须具有的基本方法。
Object类中的属性和方法可以被用到任何类。
当编程者定义一个类时指明它的父类,则编译器默认该类从object类继承而来。
在object类中提供了4个常用的方法,即Equals、GetHashCode、GetType以及ToString方法。
- Equals方法
Equals方法主要用于比较两个对象是否相等,如果相等则返回True,否则返回False。
如果是引用类型的对象,则用于判断两个对象是否引用了同一个对象的。
在c#语言中,Equals方法提供了两个,一个是静态的,一个是非静态的,具体的定义如下。
举例如下:
2、GetHashCode方法
GetHashCode方法返回当前System。Object的哈希代码,每个对象的哈希值都是固定的。
该方法不含有任何参数,并且不是静态方法,因此需要使用实例来调用该方法。
对于不同实例的哈希值是不同的,因此也可以通过该方法比较对象是否相等。
举例如下:
3、GetType方法
GetType方法用于获取当前实例的类型,返回值为System.Type类型。
4、ToString方法
ToString方法返回一个对象实例的字符串,在默认情况下将返回类类型的限定名。对于值类型,则为将值转换为字符串类型的值。
任何类都可以重写ToString方法,返回自定义的字符串。
举例如下: