Ich habe über static
gelesen. Ich weiß, dass es ein Präfix ist, auf das nur Nicht-Objekte zugreifen können. Aber ich kann nicht verstehen, warum Easter
static
sein muss?Warum ist der statische Modifikator in diesem Code erforderlich?
class JsonFile
{
public List<Holiday> StandardHolidays = new List<Holiday>();
public List<ChangingHoliday> ChangingHoliday = new List<ChangingHoliday>();
public static Easter Easter = new Easter();
public static DaysToOffset GoodFriday = new DaysToOffset("Good Friday", Easter, -2);
}
Ich habe nicht das Konzept der static
noch. Kann mir bitte jemand erklären?
Wo ist 'statisch'? –
Um dies zu erreichen, verschieben Sie die Initialisierung in einen expliziten nicht statischen Konstruktor, wie folgt: 'class JsonFile { öffentliche Liste StandardHolidays; öffentliche Liste ChangingHolidays; öffentliche Ostern Ostern; öffentliche DaysToOffset GoodFriday; public JsonFile() {StandardHolidays = neue Liste (); ChangingHolidays = neue Liste (); Ostern = neues Ostern(); GoodFriday = new DaysToOffset ("Karfreitag", Ostern, -2); } 'Wenn Sie mehrere Konstruktorüberladungen definiert haben, vergessen Sie nicht, den': this() '-Konstruktor von überall zu" verketten ". –