当我想引用方法中的实例变量时,我应该使用“this”关键字吗?

2022-09-01 11:29:30

我的老师说,当我尝试访问方法中的实例变量时,我应该始终使用关键字,否则我会执行双重搜索。本地范围搜索,然后是实例范围搜索。this

例:

public class Test(){
    int cont=0;
    public void Method(){
        System.out.println(cont);//Should I use This.cont instead?
    }
}

我希望他是错的,但我找不到任何论据。


答案 1

否,仅当存在名称冲突(例如,方法参数与其设置的实例字段具有相同的名称时)才使用。this

它可以在其他时间使用,但我们中的许多人认为它只是在代码中添加了不必要的措辞。


答案 2

由于名称冲突,如果需要,则必须使用,但最好完全避免这些冲突。this

如果您愿意,可以使用。这纯粹是一个品味问题。this

如果您的老师要求,您应该在功课中使用。this