object (Referencia de C#)object (C# Reference)

El tipo object es un alias de Object en .NET.The object type is an alias for Object in .NET. En el sistema de tipos unificado de C#, todos los tipos, los predefinidos y los definidos por el usuario, los tipos de referencia y los tipos de valores, heredan directa o indirectamente de Object.In the unified type system of C#, all types, predefined and user-defined, reference types and value types, inherit directly or indirectly from Object. Puede asignar valores de cualquier tipo a las variables de tipo object.You can assign values of any type to variables of type object. Cuando una variable de un tipo de valor se convierte en objeto, se dice que se aplica la conversión boxing.When a variable of a value type is converted to object, it is said to be boxed. Cuando una variable de tipo de objeto se convierte en un tipo de valor, se dice que se aplica la conversión unboxing.When a variable of type object is converted to a value type, it is said to be unboxed. Para obtener más información, vea Boxing and Unboxing (Conversión boxing y conversión unboxing [Guía de programación de C#]).For more information, see Boxing and Unboxing.

EjemploExample

El siguiente ejemplo muestra cómo las variables de tipo object pueden aceptar valores de cualquier tipo de datos y cómo las variables de tipo object pueden usar métodos en Object desde .NET Framework.The following sample shows how variables of type object can accept values of any data type and how variables of type object can use methods on Object from the .NET Framework.

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
*/

Especificación del lenguaje C#C# language specification

Para obtener más información, consulte la Especificación del lenguaje C#.For more information, see the C# Language Specification. La especificación del lenguaje es la fuente definitiva de la sintaxis y el uso de C#.The language specification is the definitive source for C# syntax and usage.

Vea tambiénSee also