Ciao. Per favore mi potete confermare che le seguenti cose che ho capito sul controllo dell'accesso ai metodi siano vere: 1 - Se non dichiarato altrimenti ogni metodo creato è pubblico; 2 - Quando definisco un metodo di fatto lo definisco publico, è in un secondo momento che informo Ruby che il metodo è privato o protetto tramite le seguenti istruzioni: private :nome_metodo o protected :nome_metodo (:nome_metodo è il simbolo/etichetta relativa al metodo). Ho capito bene? Ciao e grazie. KioSirio
on 2010-06-11 12:55
on 2010-06-11 13:05
Puoi anche fare così class MyClass def a end protected def b end private def c end end Tutti i metodi definiti dopo la keyword 'protected' sono protetti, lo stesso accade per 'private'. Luca
on 2010-06-11 15:34
class MyClass def a > end protected def b end > private def c end end Tutti i metodi definiti > dopo la keyword 'protected' sono protetti, lo stesso accade per > 'private'. Tra l'altro, che differenza c'è tra "private" e "protected" ? Walter
on 2010-07-12 22:04
> > Tra l'altro, che differenza c'� tra "private" e "protected" ? > I metodi protected possono essere chiamati da altre istanze dello stesso oggetto. Esempio: class MyClass def uguale?(other) self.a == other.a end def uguale_due?(other) self.b == other.b end protected def a ... end private def b ... end end foo1 = MyClass.new foo2 = MyClass.new foo1.uguale? foo2 # true o false foo1.uguale_due? foo2 # errore! foo1 non può chiamare un metodo private di foo2!
Please log in before posting. Registration is free and takes only a minute.
Existing account
(Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
Log in with Google account | Log in with Yahoo account
No account? Register here.