Exportar (0) Imprimir
Expandir todo

Propiedades (Guía de programación de C#)

Las propiedades son miembros que ofrecen un mecanismo flexible para leer, escribir o calcular los valores de campos privados. Se pueden utilizar las propiedades como si fuesen miembros de datos públicos, aunque en realidad son métodos especiales denominados descriptores de acceso. De este modo, se puede tener acceso a los datos con facilidad, a la vez que proporciona la seguridad y flexibilidad de los métodos.

En este ejemplo, la clase TimePeriod almacena un período de tiempo. Internamente, la clase almacena el tiempo en segundos, pero se proporciona una propiedad denominada Hours que permite que un cliente especifique el tiempo en horas. Los descriptores de acceso de la propiedad Hours realizan la conversión entre horas y segundos.

class TimePeriod
{
    private double seconds;

    public double Hours
    {
        get { return seconds / 3600; }
        set { seconds = value * 3600; }
    }
}

class Program
{
    static void Main()
    {
        TimePeriod t = new TimePeriod();

        // Assigning the Hours property causes the 'set' accessor to be called.
        t.Hours = 24;

        // Evaluating the Hours property causes the 'get' accessor to be called.
        System.Console.WriteLine("Time in hours: " + t.Hours);
    }
}

Time in hours: 24

  • Las propiedades permiten que una clase exponga una manera pública de obtener y establecer valores, ocultando el código de implementación o comprobación.

  • El descriptor de acceso de una propiedad get se utiliza para devolver el valor de la propiedad y el descriptor de acceso set se utiliza para asignar un nuevo valor. Estos descriptores de acceso pueden tener niveles de acceso diferentes. Para obtener más información, vea Accesibilidad del descriptor de acceso.

  • La palabra clave value se utiliza para definir el valor asignado por el indizador set.

  • Las propiedades que no implementan un método set son de sólo lectura.

Para obtener más información, vea las secciones siguientes de Especificación del lenguaje C#.

  • 1.6.6.2 Propiedades

  • 10.2.7.1 Nombres de miembros reservados para propiedades

  • 10,6 Propiedades

Adiciones de comunidad

AGREGAR
Mostrar:
© 2015 Microsoft