类Object---所有对象的基类 简介

 

一、类Object简介

1、类Object是 .NET Framework 中所有类、结构、枚举和委托的最终基类。

2、C#通常不要求类显示声明从 Object 的继承,因为继承是隐式的。

3、因为 .NET Framework 中的所有类均从 Object 派生,所以 Object 类中定义的每个方法可用于系统中的所有对象。 派生类也可以重写这些方法中的某些。

二、方法:

(1)public Type GetType()

返回与对象实例的类型对应的System.Type类型的一个对象。

Type类:表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

示例:

DateTime dt1 = new DateTime(2009, 3, 3);

Console.WriteLine(dt1.GetType());

Type t = dt1.GetType();

Console.WriteLine(t);

输出结果:

 

(2)protected Object MemberwiseClone()

创建当前 Object 的浅表副本。引用被复制,但被引用类型中的数据不会被复制。

 

(3)public static bool ReferenceEquals(Object objA, Object objB)

如果指定的两个参数 引用同一个对象或指定的两个参数都为NULL,返回值为true。

 

(4)public static bool Equals(Object objA,Object objB)

(5)public virtual bool Equals(Object obj)

(6)public virtual string ToString()

ToString 是 .NET Framework 中主要的格式化方法。 它将对象转换为其字符串表现形式。其默认实现返回 Object类型的完全限定名

(7)public virtual int GetHashCode()

返回当前 Object 的哈希代码。哈希代码是一个用于在相等测试过程中标识对象的数值。 它还可以作为一个集合中的对象的索引。

GetHashCode 方法适用于哈希算法和诸如哈希表之类的数据结构。

GetHashCode 方法的默认实现不保证针对不同的对象返回唯一值。 而且,.NET Framework 不保证 GetHashCode 方法的默认实现以及它所返回的值在不同版本的 .NET Framework 中是相同的。 因此,在进行哈希运算时,该方法的默认实现不得用作唯一对象标识符。

GetHashCode 方法可以由派生类型重写。 值类型必须重写此方法,以提供适合该类型的哈希函数和在哈希表中提供有用的分布。 为了唯一性,哈希代码必须基于实例字段或属性(而非静态字段或属性)的值。

用作 Hashtable 对象中键的对象还必须重写 GetHashCode 方法,因为这些对象必须生成其各自的哈希代码。 如果用作键的对象不提供 GetHashCode 的有用实现,您可以在构造 Hashtable象时指定哈希代码提供程序。

(8)protected virtual void Finalize()

允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。C#禁止直接调用这个方法。

注意:以上所有方法都通过继承为所有对象提供。即使是字面值(文字常量),也支持这些方法。

例如42.ToString()虽然看起来很怪但实际上是合法的。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值