1. object类型
许多编程语言和类结构都提供了根类型,层次结构中的其他对象都从它派生而来。C#和.NET也不例外。在C#中,object类型就是最终的父类型,所有内置类型和用户定义的类型都从它派生而来。这是C#的一个重要特性,它把C#与Visual Basic 6.0和C++区分开来,但其行为与Java非常类似。所有的类型都隐含地最终派生于System.Object类,这样,object类型就可以用于两个目的:
● 可以使用object引用绑定任何子类型的对象。例如,第6章将说明如何使用object类型把堆栈中的一个值对象装箱,再移动到堆中。object引用也可以用于反射,此时必须有代码来处理类型未知的对象。这类似于C++中的void指针或Visual Basic中的Variant数据类型。
● object类型执行许多一般用途的基本方法,包括Equals()、GetHashCode()、GetType()和ToString()。用户定义的类需要使用一种面向对象技术—— 重写(见第4章),提供其中一些方法的替代执行代码。例如,重写ToString()时,要给类提供一个方法,给出类本身的字符串表示。如果类中没有提供这些方法的实现代码,编译器就会使用object类型中的实现代码,它们在类中的执行不一定正确。
后面的章节将详细讨论object类型。
网址 :
http://book.csdn.net/bookfiles/829/10082925312.shtml