我想通过在重写方法实现之前始终使用override
来保持代码库的清洁,但它在Scala中似乎是可选的。是否有工具,插件或参数来检查代码样式是否符合使用override
?
答案 0 :(得分:5)
对于实际覆盖基类中的具体成员的所有成员,scala编译器需要override
关键字。如果没有基类具有该成员,则禁止使用。
所以,简短回答:是的,有一个工具,它是Scala编译器。
请注意,override
modifer在实现抽象方法时是可选的。这是一个很好的设计决策,因为它允许你追溯混合特征。如果您不小心混入具有冲突具体定义的特征,编译器会通过告诉您缺少override
修饰符来警告您。