10_this

Code-Dateien

DateinameAktion
CODECode_ClassRoom.zipDownload
CODECode_Student.zipDownload
CODECode_Urlaub.zipDownload

PDF-Dokumente

DateinameAktion
PDFFolie_ClassRoom.pdfÖffnen
PDFFolie_Student.pdfÖffnen
PDFFolie_Urlaub.pdfÖffnen
PDFUebung_Computer.pdfÖffnen
PDFUebung_Labor.pdfÖffnen
PDFUebung_Wohnung.pdfÖffnen

Videos

DateinameAktion
VIDEOVideo_ClassRoom_EAbspielen
VIDEOVideo_Fenster_DAbspielen
VIDEOVideo_Student_DAbspielen
VIDEOVideo_Urlaub_DAbspielen

Lernmaterialien

this operator

Der this-Operator (oder besser gesagt das this-Schlüsselwort) ist ein spezieller Bezeichner, der in vielen objektorientierten Programmiersprachen vorkommt (z. B. Java, C++, C#, JavaScript).

Er verweist immer auf die aktuelle Instanz eines Objekts, innerhalb dessen eine Methode oder ein Konstruktor gerade ausgeführt wird.

001.png

Konstruktor

    public Student(String name, int alter)
    {
        setName(name);
        setAlter(alter);
        setMatura(false);
    }

Es wird der Parameter anstelle von neuName auf name geändert. Diese Änderung muss auch in der setMethode vorgenommen werden.

Da wir hier auf keine Eigenschaft zugreifen, benötigen wir auch keinen this Operator.

getMethoden

    public String getName()
    {
        return name;
    }

Bei der getMethode ist keine Änderung notwendig. Die getMethodehat keinen Parameter und somit kommt es zu keinem Namenskonflikt.

Somit wird auch ohne dem this Operator der Wert der Eigenschaft zurückgegeben.

Optional wäre auch möglich aber unüblich:

    public String getName()
    {
        return this.name;
    }

setMethoden

    public void setName(String name)
    {
        // Eigenschaft this.name
        // Parameter   name
        this.name = name;
    }

Bei dieser setMethode habe ich einen Parameter nameund eine Eigenschaft name. Somit muss ich zwischen Eigenschaft und Parameter unterscheiden.

this.namebezieht sich immer auf die eigene Objektreferenz und somit auf die Eigenschaft.

Man könnte sagen this entspricht dem ICH!

printMethode

Bleibt unverändert.