我正在寻找关于this
关键字的一些指导。我刚刚了解了这个概念,这让我感到困惑。这是我的一段代码:我是否在我的代码中正确使用'this'关键字?
public class CashRegister {
private ArrayList<Double> items;
private int itemCount;
private double totalPrice;
public double getTotal() {
this.totalPrice = 0;
for (int i = 0; i < this.items.size(); i++) {
this.totalPrice = this.totalPrice + this.items.get(i);
}
return totalPrice;
}
}
我的问题是,如果我使用'this'是吗?每次使用像totalPrice
或items
ArrayList这样的变量时,是否应该使用“this”?
我不会。这是多余的,任何懂得语言的人都知道'totalPrice'指的是实例字段。 – markspace
在这种情况下,它们不是必需的。当有可能发生冲突时使用关键字。这里,getTotal()中引用的唯一对象是用于调用它的对象。因此,在引用中没有与我使用哪个对象的属性相冲突。 –
我喜欢它。对我而言,这是防止冲突的一种方法。另一种方法是根本不创建名称冲突。例如给你的成员一个像mTotalPrice这样的前缀(就像其他语言的'_totalPrice'一样)。如果您使用IDE,则可以设置一些高级规则,以便在您忘记使用'this'或创建了这样的名称冲突(至少Eclipse有这个)时警告您。 – Zabuza