从类中的模块调用方法

时间:2015-05-01 14:57:14

标签: ruby-on-rails ruby module mixins

我应该如何填写水果类以便以下代码有效?我无法弄清楚如何在Fruit类

中调用printArgument方法
module MyModule
  def printArgument(fruit)
    print "from MyModule, printArgument: "
    puts "argument supplied is #{fruit}"
  end
end


class Fruit
  #FILL ME OUT 


end


s = Fruit.new(10)
s.printArgument s.weight

1 个答案:

答案 0 :(得分:2)

这实现了Fruit

class Fruit
  include MyModule

  attr_accessor :weight

  def initialize(weight)
    @weight = weight
  end
end

include MyModule使用MyModule的行为扩展了类。这就是所谓的混合。其余的只是创建一个属性weight并使其可公开访问。