Eclipse自动生成方法存根该怎么设置?

在Eclipse的菜单栏中选择“Window” - “Preferences”,进入Eclipse的设置(Preferences)界面。

  1. 进入Eclipse的“首选项”设置界面

在Eclipse的菜单栏中选择“Window” -> “Preferences”,进入Eclipse的设置(Preferences)界面。

  1. 打开“Java” -> “Code Style” -> “Code Templates”选项卡

在Eclipse设置界面中,展开“Java”栏目,并点击“Code Style”子选项,然后再点击下面的“Code Templates”选项卡。

  1. 选择要修改的方法存根选项

在Code Templates选项卡页面中,选中左侧的“Code”部分,然后再选中其中的“Method body”,这个设置影响到在创建新方法时,Eclipse会自动填充的代码。请注意,在美国,英国和欧洲,代码模板是Java,JavaDoc注释是en_US,而在其他国家和地区,代码模板和JavaDoc注释可能不同,根据不同的使用需求进行设定。这里我们以Java为例。

  1. 修改模板内容

选中“Method body”后,Eclipse会在右侧显示出当前的默认模板内容,我们可以修改其中的代码,来满足自己的编码规范。比如我们可以将默认的模板内容:

// TODO Auto-generated method stub
return ${return_type.defaultValue};

修改为:

${cursor}${return_type} result = new ${return_type}();
// TODO Auto-generated method stub
return result;

这样,在创建新方法时,就会自动生成以上代码。其中,“${cursor}”是一个特殊变量,代表了我们在代码自动生成后,光标所在的位置,可以通过这个变量来控制代码的生成流程。

另外,我们也可以新增自己的代码模板,比如在“Code Templates”选项卡页面中,选中左侧的“New Java files”部分,然后点击“Edit”按钮,在弹出的编辑框中填写自己的代码模板。

示例1:生成新的toString方法

在方法存根设置中,我们可以修改toString方法的模板,使其符合自己的编码规范。比如我们可以将默认的模板内容:

public String toString() {
   return getClass().getName() + "@" + Integer.toHexString(hashCode());
}

修改为:

@Override
public String toString() {
   return "MyClassName{" +
           "attribute1='" + attribute1 + '\'' +
           ", attribute2=" + attribute2 +
           '}';
}

这样,在我们定义一个新的Java类并使用IDE自动生成toString方法时,就会生成符合我们编码规范的代码。

示例2:生成新的equals方法

同样的,我们也可以修改equals方法的模板,使其符合自己的编码规范。比如我们可以将默认的模板内容:

public boolean equals(Object obj) {
   if (this == obj)
      return true;
   if (obj == null)
      return false;
   if (getClass() != obj.getClass())
      return false;
   ClassName other = (ClassName) obj;
   if (attribute1 == null) {
      if (other.attribute1 != null)
         return false;
   } else if (!attribute1.equals(other.attribute1))
      return false;
   if (attribute2 != other.attribute2)
      return false;
   return true;
}

修改为:

@Override
public boolean equals(Object o) {
   if (this == o) return true;
   if (o == null || getClass() != o.getClass()) return false;
   MyClassName that = (MyClassName) o;
   return Double.compare(that.attribute1, attribute1) == 0 &&
           attribute2 == that.attribute2;
}

这样,在我们定义一个新的Java类并使用IDE自动生成equals方法时,就会生成符合我们编码规范的代码。

本文标题为:Eclipse自动生成方法存根该怎么设置?

基础教程推荐