On 05/03/11 13:35, Christopher Dicely wrote:
> On Mon, May 2, 2011 at 8:15 PM, Clifford Heath<no / spam.please.net>  wrote:
>> On 05/03/11 11:13, Adam Prescott wrote:
>>> On Tue, May 3, 2011 at 1:45 AM, 7stud --<bbxx789_05ss / yahoo.com>    wrote:
>>>> Instance methods are private by default.  If you define an accessor
>>>> method, then they become public-like:
>>> I think you meant to say "instance variables", not "methods".
>> and instance variables are available to all subclasses, also
>> when the class is re-opened... so "protected", not private.
> The instance variables of an object are not available outside of the
> instance (well, except via intrusive methods like
> #instance_variable_set),

Correct.

> so Ruby instance variables are more like
> private data variables than protected ones.

Incorrect. Protected means unavailable outside this class, except to subclasses.
What definition of "protected" are you using?

>  Sure, instances of
> subclasses of the objects class and other members of the same class as
> an object are likely to have instance variables of the same names (or,
> maybe not, as instance variables can be dynamically created and
> destroyed), but that doesn't really reflect anything about the
> visibility of the instance variables of the particular object.

No. If I set @foo, and a subclass also does, it's the same @foo,
in Ruby, at least. What language are you talking about?

Clifford Heath.