Forum: Ruby Class variables are still inherited?

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
hut (Guest)
on 2009-02-20 23:55
(Received via mailing list)
Hi ruby-talk

It's said everywhere that class variables are not inherited anymore in
newer versions of ruby. I experience a different behaviour, can you give
me any hints about what I'm doing wrong?

class Foo
  @@a = 1
  def self.moo() @@a end
end

class Bar < Foo
  @@a = 2
end

Foo.moo == Bar.moo # both are 2

My ruby comes from this package: ruby-1.9.1-p0.tar.bz2
David A. Black (Guest)
on 2009-02-21 00:11
(Received via mailing list)
Hi --

On Sat, 21 Feb 2009, hut wrote:

>
> class Bar < Foo
>  @@a = 2
> end
>
> Foo.moo == Bar.moo # both are 2
>
> My ruby comes from this package: ruby-1.9.1-p0.tar.bz2

For a while there was a change so that they weren't shared in the
whole hierarchy, but it got reverted.


David

--
David A. Black / Ruby Power and Light, LLC
Ruby/Rails consulting & training: http://www.rubypal.com
Coming in 2009: The Well-Grounded Rubyist (http://manning.com/black2)

Ruby Training Atlanta! April 1-3, http://www.entp.com/training/atlanta09
This topic is locked and can not be replied to.