Alexandru Popescu wrote: > At least in Java these modifiers are quite usefull: a protected method > is one that offers extensibility/polymorphic behavior for hierarchies, > without exposing it as public API. So the behavior may vary according > to the implementation, and the exposed API/public methods are a > completely different thing. Keep in mind that Ruby protected and private have slightly different meanings than in Java. Private protection in Ruby is instance based. That means that private methods are callable only within the object instance, but (unlike Java) that instance need not be a direct instance of the class. Ruby protected seems to be pretty close to the Java concept of protected, AFAICT (minus the package exposure in Java). However, I almost never use Ruby protected so I am probably missing some subtleties. -- Jim Weirich -- Posted via http://www.ruby-forum.com/.