У меня есть родительский класс:
class ListBase
@@list = []
def self.list
@@list
end
end
Я пытаюсь создать два дочерних класса следующим образом:
class Child1 < ListBase
end
class Child2 < ListBase
end
У меня сложилось впечатление, что у каждого из этих дочерних классов будет собственная переменная класса @@list
. Тем не менее, я получаю это:
Child1.list.push(1)
Child2.list.push(2)
Child1.list # => [1, 2]
Child2.list # => [1, 2]
, что означает, что дочерние классы разделяют @@list
от родительского класса.
Как я могу создать отдельную переменную класса для каждого из дочерних классов без повторения?