questão campos estáticos
Pergunta
im tentando entender a get e definir propriedades para os campos, e correr para este problema, lata somone explaine para mim por que eu tive que fazer o campo int X estático para fazer este trabalho?
using System;
namespace ConsoleApplication1
{
class Program
{
public static int X = 30;
public static void Main()
{
var cX = new testme();
cX.intX = 12;
Console.WriteLine(cX.intX);
cX.intX = X;
Console.WriteLine(cX.intX);
Console.ReadKey();
}
}
class testme
{
public int intX
{
get;
set;
}
}
}
Solução
Porque você estava usando o campo em um contexto estático, neste caso, o public
método static
void Main
. Desde sua classe Program
apenas executa estaticamente não houver nenhuma instância e, portanto, você não pode acessar qualquer membros de instância.
Outras dicas
porque ele é usado em um método estático
Desde Main
é estático, você pode casos não acesso não-estáticos de fora dela.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow