Не работает метод super ruby (2.5)


( An4n0m) #1

ссылка на код если здесь не понятно —>> https://paste2.org/B0kK05CW

class Animal
def initialize name
@name = name
end

def run
	print "#{name} running\n"
	eat
end

private

def eat
	print "eating\n"
end

end
class Cat < Animal.new
def initialize
super “cat”
end

def jump
	print "#{name} jumping"
end

end
cat = Cat.new
cat.run
cat.jump


(Tigran Apoyan) #2
class Animal
  # attr :name если нужно обратиться через геттер метод

  def initialize name
    @name = name
  end

  def run
    print "#{@name} running\n" # @name вместо name для доступа к переменной экземпляра напрямую
    eat
  end

  private
	
  def eat
    print "eating\n"
  end
end

class Cat < Animal # При наследовании указывается класс (Animal, а не Animal.new) 
  def initialize
    super "cat"
  end

  def jump
    print "#{@name} jumping" # @name вместо name для доступа к переменной экземпляра 
  end
end

cat = Cat.new
cat.run
cat.jump