Java静态自引用

hal*_*oei 5 java static reference

非静态setter方法可以如下所示:

private int var;

public void setVar(int var) {
  this.var = var;
}
Run Code Online (Sandbox Code Playgroud)

我无法找到如何使用静态方法解决这个问题:

private static int var;

public static void setVar(int var) {
  // ???
}
Run Code Online (Sandbox Code Playgroud)

一种解决方案是写myClass.var = var;.但那很难看,因为当我重命名我的课程时,我必须找到并替换所有出现的内容.另一种解决方案是将参数重命名为v和写入var = v;.对我来说,这也是丑陋的.

真的没有办法像在PHP中解决这个问题self::var = var;吗?

Kul*_*ary 1

不可能以你不知道的其他方式来做这件事......

myClass.var = var;
var = v;
Run Code Online (Sandbox Code Playgroud)

只有两种方法,你已经知道了……两者都很好……没有一个是丑陋的,你可以使用……

如果您使用任何像 eclipse 这样的 IDE,每当您更改类名时都会小心......