在类中调用类方法

Rom*_*n M 16 ruby

我意识到这可能是一个天真的问题,但我仍然无法弄清楚如何在Ruby类中调用另一个方法.

即在Ruby中可以执行以下操作:

class A
   def met1
   end
   def met2
      met1 #call to previously defined method1
   end
end
Run Code Online (Sandbox Code Playgroud)

谢谢,

R M

Rob*_*ble 25

那些不是类方法,它们是实例方法.您可以在示例中从met2调用met1,而不会出现使用该类实例的问题:

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

var1 = A.new
var1.met2
Run Code Online (Sandbox Code Playgroud)

下面是使用类方法的等效方法,您可以通过在方法名称前加上类名来创建它:

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

A.met2
Run Code Online (Sandbox Code Playgroud)