Frage

im Versuch, die get und die Eigenschaften für Felder zu verstehen, und in dieser Frage laufen kann somone mir explaine, warum ich das int X-Feld machen musste Static diese Arbeit zu machen?

using System;

namespace ConsoleApplication1
{
    class Program
    {
        public static int X = 30;
        public static void Main()
        {
            var cX = new testme();
            cX.intX = 12;
            Console.WriteLine(cX.intX);
            cX.intX = X;
            Console.WriteLine(cX.intX);
            Console.ReadKey();
        }
    }
    class testme
    {
        public int intX
        {
            get;
            set;
        }
    }
}
War es hilfreich?

Lösung

Da Sie das Feld in einem statischen Kontext verwendet hat, in diesem Fall das Verfahren public static void Main. Da Ihr nur Program Klasse läuft es statisch keine Instanz ist und daher können Sie keine Instanz Mitglieder zugreifen können.

Andere Tipps

, weil es in einer statischen Methode verwendet wird

Da Main statisch ist, können Sie keinen Zugriff auf nicht-statische Instanzen von außerhalb.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top