Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » this. » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Zum Ende der Seite springen this.
Beiträge zu diesem Thema Autor Datum
 this. neuling96 22.12.2014 21:30
 RE: this. eulerscheZahl 23.12.2014 07:11

Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
neuling96
unregistriert
this. Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

ich hab Schwierigkeiten das this. zuverstehen

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
    public class Figur {
     
    private int anzahlArme;
     
    public void setAnzahlArme1(int anzahlArme){
    this.anzahlArme = anzahlArme;
    }
     
    public void setAnzahlArme2(int arme ){
    this.anzahlArme = arme;
    }
     
    public void setAnzahlArme3(int arme ){
    anzahlArme = arme;
    }
     
    public Figur wasGebeIchZurück()
    {
    return this;
    }
     
    }


1. this.anzahlArme = anzahlArme;
wird der wert ganz oben zu anzahlArme
2. this.anzahlArme= arme
überscheibung von anzahlArme zu arme
3. ?

4. muss dann arme sein?
22.12.2014 21:30
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Mit this kannst du auf die Klassenvariablen zugreifen. Alle drei Funktionen setArmeAnzahl machen das selbe.
Bei public void setAnzahlArme1(int anzahlArme){ hast du zweimal die Variable anzahlArme. Die innere, also die im Funktionsargument überdeckt dadurch die äußere (die Klassenvariable). Willst du aber auf die Klassenvariable zugreifen, geht das mit this. Es wird also der Klassenvariable der an die Funtion übergebene Wert zugewiesen. Wenn du den Code in eclipse/NetBeans kopierst, werden die Klassenvariablen farblich anders gekennzeichnet, da siehst du auch nochmal, was zu Klasse gehört und was zur Funktion.

Bei setAnzahlArme2 wäre die Klassenvariable auch so zugänglich, die Verwendung von this ist redundant (wird wegen der Lesbarkeit des Codes aber trotzdem gerne gemacht). Für eine Unterscheidung zwischen Klassenvariable und Funktionsargument ist es nicht nötig, da die beiden andere Namen haben.

Bei setAnzahlArme3 wurde this dann schließlich weggelassen, geht auch.

Mit der letzten Funktion kommst du an die Instanz der Klasse. Ist eigentlich recht sinnfrei, da du ja erst einen Verweis auf die Figur brauchst, um die Funktion aufrufen und die Figur zurückgeben zu können.

__________________
Syntax Highlighting fürs Board (Link)
23.12.2014 07:11 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Informatiker Board » Themengebiete » Praktische Informatik » this.