2010-10-23 47 views
20

Aşağıdaki kod özel bir yöntem ayarlar. Peki özel ne kadar özel?Groovy'de 'özel' ne anlama geliyor?

public class Person { 
private String name 
} 

def u = new Person(name:"Ron") 
println u.name 
+0

http://stackoverflow.com/questions/3819794/how-to-define-private-getter-method-in-groovy-bean adresine bakın –

+3

@James - deneyin, hata olmadan derler. – ripper234

+2

Groovy özel alanlar için gette/setters üretir ve u.name Groovy gibi özel bir alana çarptıysanız, u.getName() {this.name} tarafından üretilen veya bunun için yöntemini çağırır. Yani bu davranış benim için iyi görünüyor. Her neyse Groovy mahremiyetle ilgili birçok konuya sahiptir;) – dnim

cevap

0

de ayrıntılar da var ve tüm değişkenler için ayarlayıcılar. Bu yöntemler herkese açıktır ve bu nedenle, özel değişkenlere kapsam dışında erişilebilmeleri, bunların olmasını beklersiniz.

Özel yöntemlerde olduğu gibi, MetaClass konsepti ile her yere gidebilirsiniz.