Я был слегка удивлен, когда компилятор пожаловался на это:
public class UsefulClass
{
public const String RatingName = @"Ratings\rating";
}
public class OtherClass
{
public void SomeFunc()
{
UsefulClass useful = new UsefulClass();
String rating = useful.RatingName;
}
}
Компилятор говорит: «К статическому члену нельзя получить доступ с помощью ссылки на экземпляр; вместо этого укажите его именем типа»
Это не проблема, String rating = UsefulClass.RatingName;
работает нормально. Мне просто интересно, что за мышление стоит за этим? У меня есть экземпляр общедоступного класса с публичной константой, почему я не могу получить данные таким образом?