On 03.11.2015 16:03, Alan Bateman wrote:
On 03/11/2015 13:41, Jochen Theodorou wrote:

Well, what we currently do is fill a ClassInfo class (a kind of
reflection cache from which we generate our meta class) with the all
the members we can access. This is the non-private members from the
parents and all declared members of the current class. If the current
class is blocked, it will automatically consist only of the not
blocked information from the parent.
By "blocked" then do you mean setAccessible(true) fails or specific
exceptions like IllegalAccess*, InaccessibleObjectException or maybe
SecurityException?

I mean SecurityException and InaccessibleObjectException.

Does it meant that Groovy will work with strong encapsulation? I realize
there are issues with support for dynamic code generation that aren't
currently exposed in the API.

IllegalAccessException is a different story, Groovy does not do strong encapsulation in the Java sense. Well, it is more that the access modifiers have a slightly different meaning, but it goes probably too far to explain details.

bye Jochen


Reply via email to