this关键字是类当前实例对象的引用(对象的引用在后面的课会讲述),使用this关键字可以访问类当前实例对象的成员变量和成员方法。
例如:
public class Circle {
/**
* @Fields π属性
*/
private double PI = 3.14;
/**
* @Fields 半径属性
*/
double radius = 5;
/**
* @return the radius
*/
public double getRadius() {
return radius;
}
/**
* @param radius the radius to set
*/
public void setRadius(double radius) {
this.radius = radius;
}
}Circle类的setRadius()方法用于设置Circle类的成员变量radius,成员变量radius与setRadius()方法中的形参名称相同,为了不引起成员变量和形参局部变量的混淆。在这种情况下,可以使用this关键字来指定成员变量radius。
this.radius指定的是Circle类的成员变量radius,而this.radius = radius语句中的第二个radius则指定的是setRadius()方法的形参。该方法的作用就是将形参radius的值赋值给成员变量radius。
this关键字除了能够访问当前实例对象的成员变量和成员方法外,还可以作为成员方法的返回值,返回当前实例对象的引用。
例如:
public Circle getCircle()
{
return this;
}Circle类的getCircle()方法返回值为Circle类,可以使用this关键字将Circle类当前的实例对象返回。