在Java方法中使用“ this”

时间:2019-02-02 05:35:47

标签: java

是否仍然需要使用“ this”。继续在类中调用变量?例如:

public class APLine {

    private int a;
    private int b;
    private int c;

    public APLine(int a, int b, int c){

        this.a = a;
        this.b = b;
        this.c = c;
    }

    public double getSlope(){

        return (double)this.a * - 1/ this.b;
    }

    public boolean isOnLine(int x, int y){

        return this.a * x + this.b * y + this.c == 0;
    }
}

对于方法getSlope()和isOnLine(),需要对this.a,this.b或this.c进行编码。还是完全没有必要,可以只使用a,b或c吗?

1 个答案:

答案 0 :(得分:2)

关键字this引用该类的当前实例。因此,在您的情况下,不必使用this.fieldName,因为您没有另一个变量遮蔽实例字段。

但是考虑这种情况,您需要使用this

public boolean isOnLine(int a, int b){

    return this.a * a + this.b * a + c == 0;
}

此处,局部变量ab遮盖了实例字段ab。如果您不使用this,则a只会引用本地变量而不是实例字段。