Вы можете позвонить Utility.GetFileName()
, если измените объявление на public static string GetFileName(string grpID)
static
. Это означает, что член является общим для всех экземпляров класса Utility
.Помните, что c # - это объектно-ориентированный язык .Нестатические члены называются instance members и должны вызываться для отдельного экземпляра класса.Каждый раз, когда вы вызываете new Utility()
, вы создаете такой экземпляр, и это отличается от всех остальных.
Это полезно, когда каждый экземпляр класса должен поддерживать информацию (состояние) внутри.Однако, если конкретный элемент не использует данные состояния - он принимает параметры, работает и, необязательно, возвращает результат - его можно объявить статическим.Затем вы вызываете его не из переменной экземпляра, а из самого имени класса (в данном случае Utility.GetFileName()
.
Когда все члены класса static
, вы можете добавить static
кСамо объявление класса. В этот момент вы никогда не сможете вызвать new Utility()
, что может быть тем, что вы хотите в этом случае.