布尔变量名的Java命名约定:writerEnabled vs writerIsEnabled
以下哪个声明符合Java的命名约定?
private boolean writerIsEnabled; // with methods like public boolean getWriterIsEnabled() public void setWriterIsEnabled()
要么
private boolean writerEnabled; // with methods like public boolean getWriterEnabled() public void setWriterEnabled()
我个人觉得第一个名字“writerIsEnabled”更具可读性,特别是当你在if语句中使用它时 –
if(writerIsEnabled) { //... }
据我所知,就是这样:
private boolean writerEnabled; // with methods like public boolean isWriterEnabled(); public void setWriterEnabled(boolean enabled);
当类型是boolean
或Boolean
,不同之处在于Getter以is
而不是get
开头。
我个人更喜欢isWriterEnabled
方法。 例如,JSF等技术在访问属性时尊重该标准。 EL表达式用is
和get
确认。
如果这是在编写器类中,您可能希望从变量中删除Writer。
我通常不会在我的字段名称中使用Is
,但会在方法中使用。
像这样的东西:
private boolean writerEnabled; public boolean isWriterEnabled(); public void setWriterEnabled(boolean enabled);
虽然这是我个人的命名惯例,但您应该与您正在使用的任何其他人交谈,看看他们会使用什么。
private boolean writerEnabled; public boolean isWriterEnabled() public void setWriterEnabled()
对于getter和setter方法,我相信约定是public boolean isWriterEnabled()
和public boolean isReaderEnabled()
。 至于变量,它应该是private boolean writerEnabled
。