Utilisation de ce mot-clé en java : 1. Appelez les attributs de cette classe, c'est-à-dire les variables membres de la classe ; 2. Appelez d'autres méthodes de cette classe 3. Appelez d'autres constructeurs de cette classe ; il doit être placé sur la première ligne du constructeur lors de son appel.
Ce mot-clé a trois applications principales :
cela appelle les attributs de cette classe, c'est-à-dire les variables membres de la classe
this appelle d'autres méthodes de cette classe ; this appelle d'autres constructeurs de cette classe. L'appel doit être placé dans la première ligne du constructeur. Appel de variables membres (Tutoriel recommandé :cours java)
Combiné avec le code, il sera plus précis. Reportez-vous au code suivant :public class Student{ String name; private void SetName(String name){ this.name = name; } }
package Test; public class ThisTest { String name; private void setName(String name) { this.name = name; System.out.println("setName: " + this.name); } private void thisTest(String name) { this.setName(name); System.out.println("thisTest: " + this.name); } public static void main(String[] args) { ThisTest tt = new ThisTest(); tt.setName("Yida"); tt.thisTest("Jenny"); } }
setName: Yida setName: Jenny thisTest: Jenny
<. 🎜>Construction Une méthode est automatiquement appelée lorsqu'un objet d'une classe est créé via le mot-clé new. Elle ne peut pas être appelée via le nom de la méthode (c'est-à-dire le nom de la classe) comme les autres méthodes du programme. Mais si une classe a plusieurs constructeurs, vous pouvez appeler d'autres constructeurs via ceci (paras...) dans un seul constructeur.
L'utilisation de ceci pour appeler d'autres constructeurs a les contraintes suivantes :
Vous ne pouvez appeler d'autres constructeurs que via cela dans le constructeur, et ne pouvez pas être utilisé dans les méthodes ordinaires.
Les constructeurs ne peuvent pas être appelés de manière récursive via cela, c'est-à-dire que le constructeur lui-même ne peut pas être appelé directement ou indirectement via cela dans un constructeur.
Appeler d'autres constructeurs via cela doit être exécuté dans la première ligne du constructeur.
Puisque super appelle, le constructeur de la classe parent doit également être exécuté dans la première ligne du constructeur, donc appeler le constructeur via ceci et super ne peut pas apparaître dans le même constructeur en même temps. Vous ne pouvez pas appeler plusieurs constructeurs différents dans un seul constructeur.
Le code suivant est erroné car un appel récursif est formé via le mot-clé this :
//错误的示例!!! class test { test() { this(1); } test(int a){ this(); } tes int b) { this(1, 2); } }
L'utilisation correcte est la suivante :
public class Student { //定义一个类,类的名字为student。 public Student() { //定义一个方法,名字与类相同故为构造方法 this(“Hello!”); } public Student(String name) { //定义一个带形式参数的构造方法 } }
Renvoie la valeur de l'objet
En plus de référencer des variables ou des méthodes membres, le mot-clé this a également un rôle important dans le renvoi d'une référence à la classe. Par exemple, dans le code, vous pouvez utiliser return this pour renvoyer une référence à une classe. À ce stade, le mot-clé this représente le nom de la classe. Si le code se trouve dans la classe d'étudiant ci-dessus, alors le code représente l'étudiant de retour. On peut voir qu'en plus de référencer des variables ou des méthodes membres, le mot-clé this peut également être utilisé comme valeur de retour de la classe. C'est la partie la plus accrocheuse du mot-clé this.
Recommandations associées :
Démarrez avec JavaCe qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!