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

Uso detalhado dos modificadores const e readonly no C#

1. Apenas tipos integrados do C# (int, double, long, etc.) podem ser declarados como const; resultados, classes e arrays não podem ser declarados como const.

2. readonly é o modificador usado para campos, acessado diretamente pelo nome da classe.ponto.campo

3. const deve ser inicializado na declaração. Após isso, não pode ser modificado.

4. readonly pode ser inicializado na declaração ou no construtor, mas não pode ser modificado em outras situações.

namespace const_and_readonly
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Meio ano tem {0} Meses", Calendar.Moths/2); //acesso direto ao campo de classe. campo constante
Calendar test1 = new Calendar();
Console.WriteLine("Cada ano tem {0} semanas e {1}1._weeks, test1._days);//campos const leitura-only podem ser acessados por meio de instância
Calendar test2 = new Calendar(31, 4);
Console.WriteLine("Janeiro tem {0} semanas e {1}2._weeks, test2 ._days);
Console.ReadKey();
}
}
class Calendar
{
public const int Moths = 12; //const deve ser inicializado na declaração
public readonly int _days =365; //readonly inicializado na declaração
public readonly int _weeks;
public Calendar() //readonly inicializado dentro do construtor
{
_weeks = 52;
}
public Calendar(int days, int weeks) //readonly inicializado dentro do construtor
{
_days = days;
_weeks = weeks;
}
public void setvalue(int days, int weeks)
{
// _days = days; Não é possível atribuir valor a um campo readonly
//_weeks = weeks; Não é possível atribuir valor a um campo readonly
}
}

O que foi mencionado acima é uma explicação detalhada dos modificadores const e readonly no C#. Espero que isso ajude. Se você tiver alguma dúvida, por favor, deixe um comentário e eu responder-ei a tempo. Agradeço também pelo apoio ao site Tutorial Yell.

Declaração: O conteúdo deste artigo é extraído da Internet, pertence ao respectivo proprietário, é voluntariamente contribuído e carregado pelos usuários da Internet. Este site não possui direitos de propriedade, não foi editado manualmente e não assume responsabilidade por questões legais relacionadas. Se você encontrar conteúdo suspeito de infringir direitos autorais, por favor, envie um e-mail para: notice#oldtoolbag.com (ao enviar e-mail, substitua # por @ para denunciar e forneça provas relevantes. Caso seja confirmado, o site deletará imediatamente o conteúdo suspeito de infringir direitos autorais.)

Você também pode gostar