首页 > 解决方案 > 此关键字 Java 名称类似于参数变量名称

问题描述

我对thisjava 中关键字的理解是,您在方法中引用实例变量而不是局部变量,以避免两个名称之间的混淆。

尽管这个问题看起来很愚蠢,但为什么我会有一个类似于实例变量名的参数变量名?或者完全一样的名字……名字相似的目的是什么?

我真的只是从java开始,所以请原谅我的无知

谢谢

标签: java

解决方案


此功能的一个常见用途是在创建构造函数或访问器方法(getter/setter)时。

public class MyClass {
  private String name;

  public MyClass(String name) {
    this.name = name;
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }
}

请注意,参数名称通常是公开可见的 API 的一部分——它们显示在生成的 Javadocs 和 IDE 代码工具中。因此,向类用户显示的“正确”参数名称通常与类内部字段完全匹配。

此外,这意味着不必为参数(或字段)提供唯一名称,只是为了避免范围非常有限的参数名称冲突。


推荐阅读