第一种情况
两个版本的方法,其中一个包含在类中,另一种包含在类的模块中。
module A
def say
puts "hello"
end
end
class B
include A
def say
puts "hello evryone"
end
end
b=B.new
b.say
输出结果为 hello evryone
第二种情况
混合拥有同名方法的模块
module A
def say
puts “my name is A”
end
end
module B
def say
puts “my name is B”
end
end
class C
include A
include B
end
c=C.new
c.say
输出为 my name is B
第三种情况
包含一个模块多次
以上面为例
class D
includ A
includ B
include A
end
输出结果为 my name is B