468 Stimmen

Was bewirkt das Schlüsselwort "static" in einer Klasse?

Um genau zu sein, habe ich diesen Code ausprobiert:

package hello;

public class Hello {

    Clock clock = new Clock();

    public static void main(String args[]) {
        clock.sayTime();
    }
}

Aber es gab die Fehlermeldung

Kein Zugriff auf nicht-statisches Feld in statischer Methode main

Daher habe ich die Deklaration von clock dazu:

static Clock clock = new Clock();

Und es hat funktioniert. Was bedeutet es, dieses Schlüsselwort vor die Deklaration zu setzen? Was genau bewirkt es und/oder schränkt es ein, was mit dem Objekt gemacht werden kann?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X