intellij并不暗示“this”关键字

时间:2016-05-31 16:51:38

标签: java intellij-idea

我有一个通过方法改变的字段。如果我this.myField=5,则字段会更改。但如果我myField=5,那么该字段不会改变。有没有一种方法可以设置intellij的首选项来暗示this指令,即使它不存在?我正在从另一个IDE导入一堆文件,并且更改它们中的每一个都是过度的。

//this fails to change myField in IntelliJ
public class MyClass{
  int myField;

  public void changeMyField(int x){
    myField=x;
  }
}

//this SUCCEEDS to change myField in IntelliJ
public class MyClass{
  int myField;

  public void changeMyField(int x){
    this.myField=x;
  }
}

1 个答案:

答案 0 :(得分:1)

可能发生的事情是,您的函数参数的名称与您要更改的字段的名称相同。当你有一个名为与实例变量相同的参数时,该参数将掩盖实例变量,实际上,如果不使用“this”,它将无法访问。

由于azurefrog指出这是一个Java的东西,因此,你不能通过任何intelliJ设置改变这种行为。

相关问题