2 votes

pourquoi ne pouvons-nous pas appeler la méthode this() à l'intérieur d'une méthode normale en java ?

Faut-il toujours utiliser la méthode this() à l'intérieur d'un constructeur ? Est-il possible d'appeler this() à l'intérieur d'une méthode non statique dans une classe ?

class A{
  void display(){
     this();
     System.out.println("hi");
  }
}

Pourquoi ne pouvons-nous pas faire quelque chose comme ça ? Je suis en train d'apprendre comment appliquer ce(). Donc ma question peut être très simple. Mais merci pour toute aide que vous apportez pour la comprendre.

5voto

Eran Points 35360

this() invoque le constructeur sans paramètre d'une classe. Il ne peut être invoqué qu'à partir d'un constructeur différent de la même classe. Et elle doit être la première déclaration dans le corps du constructeur.

Vous ne pouvez pas l'invoquer à partir d'une méthode normale pour la même raison que vous ne pouvez pas invoquer un constructeur comme s'il s'agissait d'une méthode normale. Les constructeurs ne sont invoqués que pour initialiser une nouvelle instance d'une classe (créée à l'aide de l'attribut new ou le mot-clé newInstance de la méthode Class classe).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X