上篇講到使用類別或是模組的時機,
這篇我們來看看如何在類別內引入模組的方法。
類別引入模組最常使用include,
能將模組的方法,當成實體方法使用。
因為是作用在實體上,
所以要產生一個實體。
module Flyable
  attr_accessor :name
  def fly
    puts "#{name} is flying..."
  end
end
class Bird
  include Flyable
end
bird = Bird.new
bird.name = "BB"
bird.fly           #BB is flying...
類別引入模組還可以使用extend,
能將模組的方法,當成類別方法使用。
module Flyable
  attr_accessor :name
  def fly(name)
    puts "#{name} is flying..."
  end
end
class Bird
  extend Flyable
end
Bird.fly("BB")  #BB is flying...
Ruby include extend