What is a static constructor?
A static constructor is a type of constructor that can be invoked only once for all of instances of the class. It can only be invoked only during the creation of the first instance of the class, or it can be invoked at the first reference to a static member in the class.
The static constructor is typically used to initialize the static fields of the class and to write code that only needs to be executed once. A static constructor cannot take access modifiers or have parameters. It cannot be called directly and the user has no control on when the static constructor is executed within the program.
Static constructors are primarily used when the class is using a log file. Here, the constructor can be used to write entries to this file.