这个问题类似于Strange autogenerated getter and setter in eclipse,但我在那里找不到合适的答案,也没有找到相关的问题。
说我有这门课。注意资本化:
public class Foo {
private String xxxxx;
private String yYyyy;
private String zzZzz;
}
从我的角度来看,它遵循命名约定,因为所有属性都以小写字母开头。所以我希望Eclipse自动生成这些getter和setter:
getXxxxx()...
setXxxxx(String xxxxx)...
getYYyyy()...
setYYyyy(String yYyyy)...
getZzZzz()...
setZzZzz(String zzZzz)...
但是Eclipse自动生成器会这样做(注意yYyyy getter / setter差异):
getXxxxx()... // Ok
setXxxxx(String xxxxx)... // Ok
getyYyyy()... // Different!
setyYyyy(String yYyyy)... // Different!
getZzZzz()... // Ok
setZzZzz(String zzZzz)... // Ok
好的,我的猜测是:"命名约定禁止以小写字母后跟大写字母开头的属性。你需要至少2个小写字母。"。
我的问题是:
1)这个假设好吗?如果是的话,为什么会这样?
2)为什么Eclipse的行为与#34; yYyyy"案件?如果我们假设属性命名不正常,那么在我看来,Eclipse会让它变得更糟。这是一个错误吗?有什么理由吗?
感谢。