1、变量命名冲突的时候,用于区分。
2、用于在类中调用构造函数。
如下:
public class test{
private int a;
private int b;
private int c;
public test(int a,int b){//作用1
this.a = a;
this.b = b;
}
public test(int a,int b,int c){//作用2
this(a,b);
this.c = c;
}
}
注意:在static方法中不能使用this,原因是静态方法存在于方法区,而对象存在于堆。