布尔变量名的Java命名约定:writerEnabled vs writerIsEnabled

时间:2012-08-13 20:06:42

标签: java naming-conventions boolean

以下哪些声明符合Java的命名约定?

private boolean writerIsEnabled;
// with methods like
public boolean getWriterIsEnabled() 
public void setWriterIsEnabled()

OR

private boolean writerEnabled;
// with methods like
public boolean getWriterEnabled() 
public void setWriterEnabled()

我个人觉得第一个名字“writerIsEnabled”更具可读性,尤其是当你在if语句中使用它时 -

if(writerIsEnabled)
 {
    //...
 } 

4 个答案:

答案 0 :(得分:30)

据我所知,就是这样:

private boolean writerEnabled;
// with methods like
public boolean isWriterEnabled();
public void setWriterEnabled(boolean enabled);

当类型为booleanBoolean时,区别在于Getter以is而不是get开头。

我个人更喜欢isWriterEnabled方法。例如,JSF等技术在访问属性时尊重该标准。 EL表达式通过isget确认。

答案 1 :(得分:5)

如果这是在编写器类中,您可能希望从变量中删除Writer。

我通常不会在我的字段名称中使用Is,但会在方法中使用。{/ p>

这样的事情:

private boolean writerEnabled;

public boolean isWriterEnabled();
public void setWriterEnabled(boolean enabled);

虽然这是我的个人命名惯例,但您应该与您正在合作的任何其他人交谈,看看他们会使用什么。

答案 2 :(得分:3)

private boolean writerEnabled;
public boolean isWriterEnabled() 
public void setWriterEnabled()

答案 3 :(得分:2)

对于getter和setter方法,我认为约定是public boolean isWriterEnabled()public boolean isReaderEnabled()。 至于变量,它应该是private boolean writerEnabled