Статическая операция, подобная java в c#

#c# #java #static

#c# #java #статическая

Вопрос:

В Java вы можете добавить блок статической операции в любой класс, и он будет вызван при запуске приложения:

 class test{
   static{
    //do some operation when the application starts.
   }
}
  

Что эквивалентно в c #?
Спасибо

Ответ №1:

C # имеет статический конструктор:

 class Test {
    static Test() {
        // …
    }
}
  

Ответ №2:

Эквивалентом в C # является статический конструктор:

 class Test
{ 
   static Test()
   { 
    //do some operation before accessing to any member of the class
   } 
} 
  

Статический конструктор гарантированно будет выполнен до обращения к любому члену класса. Однако не гарантируется, что она будет вызвана при запуске приложения.

Комментарии:

1. Фактически, гарантируется, что она не будет вызываться при запуске приложения, только при первом обращении к классу. Но то же самое относится и к Java, насколько я знаю.

Ответ №3:

Это называется статическим конструктором:

 class test
{
    static test()
    {
        //do some operation when the application starts.
    }
}
  

Ответ №4:

Используйте статический конструктор

 class test
{
    static test()
    {
        // do some job
    }
}
  

Ответ №5:

Если я правильно помню, это непросто, вам придется прибегнуть к статическим конструкторам. Попробуйте взглянуть здесь на документацию Microsoft