日食生成用于域的对象和与classmembers的“m”后缀的getter / setter(Ecl

2019-07-17 19:31发布

我有一个关于我的域对象生成getter和setter方法一个小问题。 我想用一个共同的风格指南我的源代码。 这种风格指南的一部分说我开始每类成员的名字与成员前缀“M”。

class User{
String mName;
List<Call> mAllCall;
List<Geo> mAllGeo;

不幸的是我有更多的成员变量几个类。 我的问题是,我是一个很懒惰的开发,而且我在Eclipse中创建getter和setter方法与

“源” - >“生成getter和setter”。

其结果是

public String getmName() {
    return mName;
}
public void setmName(String mName) {
    this.mName = mName;
}
public List<Call> getmAllCall() {
    return mAllCall;
}
public void setmAllCall(List<Call> mAllCall) {
    this.mAllCall = mAllCall;
}
public List<Geo> getAllGeo() {
    return mAllGeo;
}
public void setmAllGeo(List<Geo> mAllGeo) {
    this.mAllGeo = mAllGeo;
}

这不是我想要的结果。 我需要这个:

public String getName() {
    return mName;
}
public void setName(String pName) {
    this.mName = pName;
}
public List<Call> getAllCall() {
    return mAllCall;
}
public void setAllCall(List<Call> pAllCall) {
    this.mAllCall = pAllCall;
}
public List<Geo> getAllGeo() {
    return mAllGeo;
}
public void setmAllGeo(List<Geo> pAllGeo) {
    this.mAllGeo = mAllGeo;
}

我目前捞出用手工方法名称替换前缀。 是否有更简单的方法来做到这一点?

Answer 1:

对于前缀m ,你的信中添加m到你在Java代码样式的前缀列表。

跟着这些步骤:

  1. 在左侧面板中,展开Java,
  2. 展开代码风格
  3. 右图是你现在应该在看

您将看到字段,静态字段等的列表这是你需要修改的。

设置m反对

设置p反对参数

作为字段的名称现在将从参数,名称不同this. 资格将不再自动添加。 但是,您可以勾选所有符合条件产生的场访问“这一点。” 再次拥有它。

我想你知道启用项目特定的设置配置工作区设置之间的区别......在窗口的左上角和右边?



Answer 2:

我不喜欢这个主意可言,但..

你可以写成员没有前缀m ,让Eclipse中创建的getter和setter,一个后来重新命名成员(Shift + Alt键-R); Eclipse会改变引用,但没有(除非你明确告诉它)的getter / setter方法签名。



Answer 3:

的getter和setter方法的名称是从字段名的。 如果您使用的字段前缀或后缀(如F值,_value,val_m),你可以指定代码样式首选项页中的前缀和后缀(窗口>首选项>的Java>代码样式)。

在参考这里



文章来源: Eclipse generate getter/setter for domain objects and classmembers with 'm' suffix