非静态setter方法如下所示:
private int var;
public void setVar(int var) {
this.var = var;
}
我无法通过静态方法找到解决方法:
private static int var;
public static void setVar(int var) {
// ???
}
一种解决方案是编写myClass.var = var;
。但那很难看,因为当我重命名我的课时,我必须找到并替换所有出现的事。
另一种解决方案是将参数重命名为v
并写入var = v;
。对我来说,这也是丑陋的。
真的没有办法解决这个问题,就像在php self::var = var;
中一样吗?
答案 0 :(得分:2)
重命名字段变量是最方便的方法。看看Android Code Style Guideline。他们建议将所有静态字段命名为sVariable
。它并不丑陋且非常容易理解。所以,它会是这样的:
private static int sVar;
public static void setVar(int var) {
sVar = var;
}
答案 1 :(得分:1)
我们需要写如下:
ClassName.var=var;
答案 2 :(得分:1)
这样做:
public class Example {
private static int var;
public static void setVar(int var) {
Example.var = var;
}
}
答案 3 :(得分:1)
用你知道的其他方式做这件事是不可能的............
myClass.var = var;
var = v;
只有两种方式你已经知道.......... 两者都很好..没有一个是丑陋的你可以使用.......
如果您将使用像eclipse这样的任何IDE,只要您更改类的名称就会小心............