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;
}
}
내 질문에 '이'권리가 있습니까? totalPrice
또는 items
ArrayList와 같은 변수를 사용할 때마다 'this'를 사용해야합니까?
내가하지 않을 것입니다. 그것은 중복적이고 언어를 이해하는 사람은'totalPrice'가 인스턴스 필드를 참조한다는 것을 압니다. – markspace
이 경우에는 필요하지 않습니다. 이 키워드는 충돌의 가능성이있을 때 사용됩니다. 여기에서 getTotal()에서 참조되는 유일한 객체는 객체를 호출하는 데 사용 된 객체입니다. 따라서 어떤 객체의 속성에 대한 참조가 충돌하지 않습니다. –
나는 그것을 좋아한다. 나를 위해 갈등을 예방하는 한 가지 방법입니다. 또 다른 방법은 전혀 이름 충돌을 일으키지 않는 것입니다. 예를 들어 회원들에게'mTotalPrice'와 같은 접두어를 주면 (다른 언어에서는'_totalPrice'와 같이). IDE로 작업한다면 아마도'this'를 사용하는 것을 잊어 버렸거나 그러한 이름 충돌을 만들었다면 (적어도 이클립스가 가지고있는) 당신에게 경고하는 것과 같은 몇 가지 고급 규칙을 설정할 수 있습니다. – Zabuza