c# Fehler: "Objektreferenz ist erforderlich, um auf nicht statische Felder, Methoden oder Eigenschaften zugreifen zu können"
] In diesem c# Code trat ein Fehler in der population [i] .bits = getRandombits ();
Zeile in der main ()
-Methode auf, und die Fehlermeldung ist " Die Objektreferenz ist erforderlich, um auf nicht-statische Felder, Methoden oder Attribut 'vm_placement.program.getRandombits ()' 'zuzugreifen. Dieser Fehler zeigt an, dass eine nicht statische Methode getRandombits ()
aus der statischen main ()
-Methode aufgerufen wird.
In C#sind statische Methoden mit Klassen verbunden, nicht mit bestimmten Instanzen von Klassen, und nicht mit statischen Methoden sind mit Instanzen von Klassen verbunden. Dies bedeutet, dass nicht statische Methoden Anfälle der Klasse erfordern, um aufgerufen zu werden.
Für diesen speziellen Fall gibt es zwei Lösungen, um diesen Fehler zu beheben:
Program p = new Program();
p.GetRandomBits();
Wenn Sie eine Instanz der Programmklasse erstellen, können Sie GetRandombits ()
in dieser Instanz aufrufen, da es sich jetzt um eine Instanzmethode handelt.
public static string GetRandomBits()
{
// ...
}
set getRandombits ()
zu statisch und erlauben, dass sie direkt in die statische main ()
Methode aufgerufen werden kann, ohne dass die Klasse für die Klasse erforderlich ist.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3