English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Uso detallado de los modificador const y readonly en C#

1. Solo los tipos integrados de C# (int, double, long, etc.) se pueden declarar como const; los resultados, las clases y los arrays no se pueden declarar como const.

2. readonly es un modificador utilizado en campos, se accede directamente mediante el nombre de la clase. .

3. const debe inicializarse en la declaración. Después de eso, no se puede modificar.

4. readonly puede inicializarse en la declaración o en el constructor, no se puede modificar en otras circunstancias.

namespace const_and_readonly

class Program

static void Main(string[] args)

Console.WriteLine("La mitad del año tiene {0} Meses", Calendar.Moths/2); //acceso a campo constante a través del nombre de la clase
Calendar test1 = new Calendar();
Console.WriteLine("Cada año tiene {0} semanas y {1}1._weeks, test1._days);//lectura de campo constante a través de la instancia
Calendar test2 = new Calendar(31, 4);
Console.WriteLine("Enero tiene {0} semanas y {1}2._weeks ,test2 ._days);
Console.ReadKey();


class Calendar

public const int Moths = 12; //const debe inicializarse en la declaración
public readonly int _days=365; //inicialización de readonly en la declaración
public readonly int _weeks;
public Calendar() //inicialización de readonly en el constructor

_weeks = 52;

public Calendar(int days, int weeks) //inicialización de readonly en el constructor

_days = days;
_weeks = weeks;

public void setvalue(int days, int weeks)

// _days = days; No se puede asignar valor a un campo de solo lectura
//_weeks = weeks; No se puede asignar valor a un campo de solo lectura

El siguiente es un análisis detallado de la utilización de los modificador const y readonly en C#, esperamos que sea útil para ustedes. Si tienen alguna pregunta, déjenos un mensaje y responderemos a tiempo. ¡También agradecemos enormemente el apoyo de todos a la página web de呐喊教程!

Declaración: el contenido de este artículo se obtiene de la red, es propiedad del autor original, el contenido se contribuye y carga espontáneamente por los usuarios de Internet, este sitio no posee los derechos de propiedad, no se ha procesado editorialmente y no asume responsabilidades legales relacionadas. Si encuentra contenido sospechoso de infracción de derechos de autor, por favor envíe un correo electrónico a: notice#oldtoolbag.com (al enviar un correo electrónico, por favor reemplace # con @) para denunciar, y proporcione la evidencia relevante. Una vez verificada, este sitio eliminará inmediatamente el contenido sospechoso de infracción.

Te gustará