标签: ruby class module
我有两个类Chicken和Frog,它们都是Animal的子类,它包含两个生物共有的变量和方法。子类包含修改后的initialize方法,以及它们自己的实例方法。
Chicken
Frog
Animal
initialize
在什么时候,Chicken和Frog周围的模块是否有用? Animal模块会替换Animal超类吗?在什么情况下,如果有的话,它能够吗?
答案 0 :(得分:4)
您可以包含许多模块,但只能有一个超类。这是非常重要的区别。通常通过mixin扩展功能更方便,而不是继承。