Checkstyle的“AbstractClassName”检查使用以下默认模式来检查应声明为 abstract 的类名:
^Abstract.*$|^.*Factory$
我知道以'Abstract'开头的类应该被声明为abstract。但是,对于以'Factory'结尾的类,为什么这也适用?
这真的是最好的做法吗?如果是这样,我应该如何命名我的工厂类?
答案 0 :(得分:4)
默认正则表达式来自抽象工厂模式 - 请参阅http://www.apwebco.com/gofpatterns/creational/AbstractFactory.html。
我承认我没有看到这个在野外使用的命名约定。更改检查配置以使用模式是一件简单的事情:
^Abstract.*$
与往常一样,Checkstyle应作为指南用于最佳做法。
答案 1 :(得分:2)
略微扩展到Oliver的回答(不容易添加评论)。要将Checkstyle规则更改为不再检查“Factory”,请将以下内容放入checkstyle配置XML文件中:
<module name="AbstractClassName">
<property name="format" value="^Abstract.*$"/>
</module>
有关详细信息,请参阅working.webm。