更新:2007 年 11 月

object 类型在 .NET Framework 中是 Object 的别名。在 C# 的统一类型系统中,所有类型(预定义类型、用户定义类型、引用类型和值类型)都是直接或间接从 Object 继承的。可以将任何类型的值赋给 object 类型的变量。将值类型的变量转换为对象的过程称为“装箱”。将对象类型的变量转换为值类型的过程称为“取消装箱”。有关更多信息,请参见装箱和取消装箱

示例

下面的示例演示了 object 类型的变量如何接受任何数据类型的值,以及 object 类型的变量如何在 .NET Framework 中使用 Object 的方法。

C# 复制代码
class ObjectTest
{
   public int i = 10;
}

class MainClass2
{
   static void Main()
   {
      object a;
      a = 1;   // an example of boxing
      Console.WriteLine(a);
      Console.WriteLine(a.GetType());
      Console.WriteLine(a.ToString());

      a = new ObjectTest();
      ObjectTest classRef;
      classRef = (ObjectTest)a;
      Console.WriteLine(classRef.i);
   }
}
/* Output
    1
    System.Int32
    1
 * 10
*/

C# 语言规范

有关更多信息,请参见 C# 语言规范中的以下各章节:

  • 1 简介

  • 4.2.2 对象类型

请参见