1、this变量代表对象本身。
2、当类中有两个同名变量,一个属于类(类的成员变量),
而另一个属于某个特定的方法(方法中的局部变量),使用this区分成员变量和局部变量。
public class Point()
{
private int x;
private int y;
public void output(int x, int y)
{
x = x;
y = y;
}
public static void main(String[] args)
{
Point p = new Point();
p.output(3,3);
}
}
当程序运行完了,成员变量x和y的值依然为默认值0,而不是x=3,y=3。
output(int x,int y)应该修改为
public void output(int x, int y)
{
this.x = x;
this.y = y;
}
或者修改为
output(int a, int b);
3、使用this简化构造函数的调用。
public Point()
{
this.(1, 2);
}
public Point(int x, int y)
{
this.x = x;
this.y = y;
}
此时通过this(1,2)来调用有参构造函数Point(int x, int y),并且this关键字必须写在第一行。
4、关于实例方法和实例数据成员的进一步说明
一个类所有的实例(对象)调用的成员方法在内存中只有一份拷贝,尽管在内存中可能有
多个对象,而数据成员在类的每个对象所在内存中都存在着一份拷贝。this变量允许相同的
实例子方法为不同的对象工作。每当调用一个实例方法时,this变量将被设置成引用该实例方法
的特定的类对象。方法的代码接着会与this所代表的对象的特定数据建立关联。