Tag: 混合

Ruby中抽象类的替代方法?

我是Ruby的新手。 一个简单的例子,我需要的: class Animal abstract eat() class Cat < Animal eat(): implementation class Dog < Animal eat(): implementation 换句话说,所有扩展Animal的类都需要eat()方法。 在JAVA中,我只使用一个抽象类,但经过一些研究后我发现许多人不在Ruby中使用它,而建议使用mixin / modules。 但是,我不明白,如果模块可以做的不仅仅是包含一个额外的方法。 确切地说,模块是否可以为类必须实现哪些方法设置要求(如果是,可以赞赏一个例子)? 总而言之,在这种情况下我应该使用什么,当我想确定,所有相同类型的类都有特定的方法并以自己的方式实现它们?