使用eclipse的布尔Getter和Setter

new*_*bie 6 java eclipse

我想知道为什么eclipse产生以下getter和setter如果我使用以下布尔值:

boolean isLifeTimeMember
Run Code Online (Sandbox Code Playgroud)

图片

The getter should be isIsLifeTimeMember() and not isLifeTimeMember()

I think it affected calling the variable isLifeTimeMember in JSP. because it will look at JSP and map it to isIsLifeTimeMember() getter method.

Error will result because there is no isIsLifeTimeMember() method but the getter generated by eclipse is isLifeTimeMember()

Thank you.

Ted*_*opp 16

Eclipse name generation rules are that boolean getters should start with is. If the variable name already starts with is, then it thinks that no additional prefix is necessary.

Eclipse有一个设置来控制is生成的布尔getter的使用.打开首选项并导航到Java > Code Style.在那里你可以取消选中"使用'是'前缀用于返回布尔值的getter".Eclipse生成的布尔getter将以"get"开头,就像所有其他的一样.

顺便说一句,Java有一个具有相同名称的字段和方法没有问题.

但是,使用以"is"开头的属性名称可能会导致jsp出现问题.如本主题所述,最好避免使用类似问题的属性名称(isLifeTimeMember),而只是将属性本身用作属性名称(lifeTimeMember).

代码示例:

boolean lifeTimeMember;

public boolean isLifeTimeMember() {
   return lifeTimeMember;
}

public void setLifeTimeMember(boolean lifeTimeMember) {
   this.lifeTimeMember = lifeTimeMember;
}
Run Code Online (Sandbox Code Playgroud)

在JSP中,如果需要使用此变量,只需使用变量名"lifeTimeMember".