object 的方法
● ToString() 方法:是快速获取对象的字符串表示的一种便捷方式。当只需要快速获取对象的内容,用于调试时就可以使用这个方法。在数据的格式化方面,它提供的选择非常少:例如,日期在原则上可以表示为许多不同的格式,但 DateTime.ToString() 没有在这方面提供任何选择。如果需要更专业的字符串表示,例如考虑用户的格式化配置或文化 ( 区域 ) ,就应实现 IFormattable 接口
● GetHashTable() 方法:如果对象放在名为映射 ( 也称为散列表或字典 ) 的数据结构中,就可以使用这个方法。处理这些结构的类使用该方法确定把对象放在结构的什么地方。如果希望把类用作字典的一个键,就需要重写 GetHashTable() 方法。
● Equals()( 两个版本 ) 和 ReferenceEquals() 方法:如果把 3 个用于比较对象相等性的不同方法组合起来,就说明 .NET Framework 在比较相等性方面有相当复杂的模式。这 3 个方法和比较运算符 == 在使用方式上有微妙的区别。而且,在重写带一个参数的虚拟 Equals() 方法时也有一些限制,如果选择这么做,就是因为 System.Collections 命名空间中的一些基类要调用该方法,并希望它以特定的方式执行。
● Finalize() 方法:第 7 章将介绍这个方法,它最接近 C++ 风格的析构函数,在引用对象被回收调用,以清理资源时。 Finalize() 方法的 Object 执行代码实际上什么也没有做,因而被垃圾收集器忽略。如果对象拥有对未托管资源的引用,则在该对象被删除时,就需要删除这些引用,此时一般要重写 Finalize() 。垃圾收集器不能直接重写该方法,因为它只负责托管的资源,只能使用用户提供的 Finalize() 。
● GetType() 方法:这个方法返回从 System.Type 派生的类的一个实例。这个对象可以提供对象所属类的更多信息,包括基本类型、方法、属性等。 System.Type 还提供了 .NET 反射技术的入口。
●
MemberwiseClone()
方法:这是
System.Object
中惟一没有在本书的其他地方详细论述的方法。不需要讨论这个方法,因为它在概念上相当简单,只是复制对象,返回一个对副本的引用
(
对于值类型,就是一个装箱的引用
)
。注意,得到的副本是一个简单复制,即它复制了类中的所有值类型。如果类包含内嵌的引用,就只复制引用,而不复制引用的对象。这个方法是受保护的,所以不能用于复制外部的对象。该方法不是虚拟的,所以不能重写它的实现。
常用方法为:
1)equals(); 确定两个object实例是否相等。
2).getType(); 获取当前实例类型。
3).Tostring(); 返回当前object实例的字符串值。