Получение значения поля по экземпляру класса - PullRequest
0 голосов
/ 21 апреля 2019

Я учусь писать код на C #, и мне хотелось бы знать, есть ли возможность получить значение поля внутри класса, просто используя имя экземпляра.Я хотел бы, чтобы это выглядело так:

class foo{
   public Int32 field = 35;

   //Code i need... 
} 

public static void Main() {
   foo instance = new foo();
   Console.WriteLine(instance);
}

И вывод будет "25".Так есть ли способ заставить такой код работать или мне нужно использовать, например, свойство?

1 Ответ

3 голосов
/ 21 апреля 2019

НЕТ, если только вы не укажете поле или свойство, к которому хотите получить доступ, например, instance.field. Хотя вы можете переопределить метод ToString(), чтобы напечатать это значение как

public override string ToString()
{
  return field.ToString();
}

Так что теперь вы можете сказать

public static void Main() {
   foo instance = new foo();
   Console.WriteLine(instance); // will print 35
}
...