this. was ist das?

j.ava

Mitglied
Hi

kann mir jemand erklären, was es mit der this Anweisung auf sich hat?
Ich weiß nur das sich "this" sich auf das Attribut, also auf die globalen Klassenvariablen bezieht.
Wenn ich jetzt zufällig in der Klasse einen Parameter habe, der den gleichen Namen trägt, dann muss ich this anwenden, um das Attribut oben anzusprechen und nicht das aus der Methode, weil dieses ja übergeben wurde, oder?

Ich bin momentan total verwirrt.



Java:
class Player 
{ 
  String name; 
 
  String namen(String name) {
	  this.name = name;
	  return name;
  }
}
 

0din

Bekanntes Mitglied
this = dieses objekt

in deinem fall sagst du damit das "name" von dem objekt dem parameter "name" entspricht

wenne name = name sagst, beziehst du dich beide male auf den parameter und deine variable im objekt bleibt null
 

nasir

Mitglied
Wenn der Parameter und die Variable gleich heißen, verwendet man "this.", damit man auch weiß, das man für Attribut zuweißt.

z.B.
Hier brauchst du kein this. weil die Variablenamen "name" und "blablablablaba" nicht gleich heißen.
Java:
class Player 
{ 
  String name; 
 
  String namen(String blablablablaba) {
      name = blablablablaba;
      return name;
  }
}

Hier brauchst du ein this. weil die Variablenamen blablablablaba und blablablablaba gleich heißen.
Java:
class Player 
{ 
  String blablablablaba; 
 
  String namen(String blablablablaba) {
      this.blablablablaba = blablablablaba;
      return name;
  }
}
 

Oben