当前位置: 首页 > 面试题库 >

Eclipse为后缀为“ m”的域对象和类成员生成getter / setter

敖子安
2023-03-14
问题内容

关于域对象中生成的getter和setter方法,我有一个小问题。我想对我的源代码使用通用的样式指南。该样式指南的一部分说,我以成员的前缀“
m”开头每个类成员名称。

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

不幸的是,我有几个带有更多成员变量的类。我遇到的问题是我是一个非常懒惰的开发人员,并且在Eclipse中使用以下方法创建了getter和setter方法

“源”->“生成Getter和Setters”。

结果是

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;
}

我目前手动删除和替换方法名称中的前缀。有没有更简单的方法可以做到这一点?


问题答案:

对于前缀m,您可以将字母添加mJava代码样式 的前缀列表中。

跟着这些步骤:

  1. 打开 “偏好设置”
  2. 在左侧面板中,展开 Java
  3. 展开 代码样式
  4. 右侧面板是您现在应该查看的位置

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

m针对 字段 设置。

p根据 Parameter 设置。

由于字段名称现在将不同于参数名称,因此this.将不再自动添加限定条件。但是,您可以选中 “使用此条件来限定所有生成的字段访问” 选项
再次拥有它。

我想您知道窗口左上角和右上角的“ 启用项目特定设置” 和“ 配置工作区设置…” 之间的区别吗?



 类似资料:
  • 我在为Lombok getter和setter生成Javadoc时遇到问题。这两个建议我都试过了。示例字段及其文本如下所示: 但是,我在生成的Javadoc中既没有看到getter,也没有看到setter。我在Eclipse上使用受保护的可见性(项目-

  • AlarmClock 类的对象需要知道何时响钤,因此可以将一个 Time 对象作为类成员,这种功能称为复合(composition)。类可以将其他类对象作为自己的成员。 软件工程视点 7.7 复合是软件复用的一种形式,就是一个类将其他类对象作为自己的成员。 生成对象时,自动调用其构造函数,因此要指定参数如何传递给成员对象的构造函数。成员对象按声明的顺序(而不是在构造函数的成虽初始化值列表中列出的顺

  • 问题内容: 当我在Eclipse中为名称类似的类字段使用自动生成器进行getter / setter时, 将产生以下内容: 该字段的首字母将不会大写!但是我使用的一些框架可以与反射一起使用,并通过使用“ get” +大写的字段名称来调用getter / setter。 我可以在eclipse中更改getter / setter的代码生成以生成类似和的输出吗? 问题答案: 1)我认为不可能,类似的讨

  • 我有一个布尔变量在lombok生成。我正在使用lombok注释。如何将方法更改为hasObject()

  • 问题内容: 该函数的第一行在:类上获取错误。 我遵循Django文档教程,并且它们具有相同的代码并正在运行。 我尝试调用一个实例。 也是我该类的models.py代码是… 无济于事,我仍然有这个错误。 我已经读过有关pylint的文章并进行了运行… 这没有帮助,即使github自述文件说… 防止有关Django生成的属性(例如Model.objects或Views.request)的警告。 我在我