69 votes

Comment utiliser le mot-clé self de Ruby

D'après ce que je comprends à propos de self , cela fait référence à l'instance actuelle de la classe.

N'est-ce pas le comportement par défaut à tout moment de toute façon ? Par exemple, n'est-ce pas

 self.var_one = method(args)

équivalent à

 var_one = method(args) 

Si oui, à quoi sert self ?

4voto

Sohan Points 1766

Voici un exemple :

 def run miles
  self.miles = miles
end

Dans ce cas, self aidera. Dans la plupart des cas, self est redondant.

4voto

brayne Points 566

Une autre utilisation de self est de déclarer des méthodes de classe (similaires aux méthodes statiques en Java).

 class foo
 def self.bar
  #do class related stuff here
 end
end

Cela étant dit, vous auriez également pu utiliser def foo.bar place pour la signature de la méthode.

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