Auf Thema antworten

Bei der Deklaration geht es um die Einführung eines neuen Bezeichners (z. B. für eine Variable, eine Methode, Klasse oder anderen Typ). Zusammen mit der Initialisierung bzw. Implementierung hat man dann eine vollständige Definition.


Beispiel:

[code=Java]

class A {

    int x; // deklariert und definiert die Instanzvariable x


    public void hello() {  // deklariert und definiert die Methode hello

        int y; // deklariert die lokale Variable y

    }

}

[/code]


Begründung:

  • Variable x wird nicht nur deklariert, sondern auch definiert, weil Instanzvariablen immer (d. h. ggf. automatisch) initialisiert werden. Persönlich bevorzuge ich es, bei Variablen nur von Deklaration zu sprechen.
  • Die Methode hello wird an dieser Stelle eingeführt (-> Deklaration) und implementiert (-> Definition)
  • Variable y ist eine lokale Variable. Lokale Variablen werden nicht initialisiert, so dass hier tatsächlich nur eine Deklaration erfolgt.

Werden Methoden in Java bei Ihrer Definition immer auch deklariert? Nein.


Beispiel:

[code=Java]

interface A {

    void print(); // deklariert Methode print

}


class B implements A {

    public void print() { // definiert die Methode print

        System.out.println("Hello!");

    }

}

[/code]

Abstrakte und native Methoden werden zunächst nur deklariert und an anderer Stelle durch ihre Implementierung definiert.



Oben