Calling a class method within a class

后端 未结 1 658
情深已故
情深已故 2021-02-07 07:02

I realize this perhaps a naive question but still I cant figure out how to call one method from another in a Ruby class.

i.e. In Ruby is it possible to do the following:

1条回答
  •  鱼传尺愫
    2021-02-07 07:14

    Those aren't class methods, they are instance methods. You can call met1 from met2 in your example without a problem using an instance of the class:

    class A
       def met1
         puts "In met1"
       end
       def met2
          met1
       end
    end
    
    var1 = A.new
    var1.met2
    

    Here is the equivalent using class methods which you create by prefixing the name of the method with its class name:

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

    0 讨论(0)
提交回复
热议问题