Вызов метода класса внутри класса

Я понимаю, что это, возможно, наивный вопрос, но все же я не могу понять, как вызвать один метод из другого в классе Ruby.

то есть. В Ruby можно сделать следующее:

class A
   def met1
   end
   def met2
      met1 #call to previously defined method1
   end
end

Спасибо,

РМ

Ответы

Ответ 1

Это не методы класса, они являются методами экземпляра. Вы можете вызвать met1 из met2 в вашем примере без проблем, используя экземпляр класса:

class A
   def met1
     puts "In met1"
   end
   def met2
      met1
   end
end

var1 = A.new
var1.met2

Вот эквивалент с использованием методов класса, которые вы создаете, префиксное имя метода с его именем класса:

class A
   def A.met1
     puts "In met1"
   end
   def A.met2
      met1
   end
end

A.met2