我正试图理解Ruby,而我正在努力解决的一件事是缺乏接口/抽象类支持。通过谷歌搜索,我不断地看到对抽象类相关的Ruby问题的回答是“你在用Java思考,Ruby不是这样工作的”
那么,在没有接口/抽象类的Ruby中如何工作呢?
例如,在Java中,我可能会创建一个抽象类"book",其中包含子类"novel“、”subclasses“和"journal”。我在“book”中添加了很多常见的功能,但我不希望它是直接可访问的--一本书必须是小说、教科书或期刊。
在ruby中,我该如何写出这种功能呢?
发布于 2014-01-04 01:50:44
有很多方法可以实现这种类型的东西,包括abstract_type gem。虽然ruby不需要它,并且有混入,但我认为在某些情况下,比如适配器,你会想要用更显式的东西来保护到一组对象的接口。
另外,请查看http://metabates.com/2011/02/07/building-interfaces-and-abstract-classes-in-ruby/
https://stackoverflow.com/questions/5076933
复制相似问题