Java中this关键字有多种常见用法,以下是其中几个:
引用当前对象
this关键字可以用于引用当前对象。在一个对象的方法中,可以使用this关键字来引用该对象本身。例如:
public class Person {
private String name;
public void setName(String name) {
this.name = name;
}
}
在上面的示例中,setName()方法中的this关键字引用了当前的Person对象。
调用构造函数
this关键字可以用于调用同一个类中的另一个构造函数。在构造函数中,可以使用this关键字调用同一个类中的另一个构造函数。例如:
public class Person {
private String name;
public Person() {
this("Unknown");
}
public Person(String name) {
this.name = name;
}
}
在上面的示例中,Person()构造函数使用this关键字调用了另一个构造函数Person(String name)。
区分局部变量和成员变量
this关键字可以用于区分局部变量和成员变量。如果在方法中使用局部变量和成员变量具有相同的名称,那么可以使用this关键字来引用成员变量。例如:
public class Person {
private String name;
public void setName(String name) {
this.name = name;
}
}
在上面的示例中,setName()方法的参数name与成员变量name具有相同的名称。为了区分它们,使用this关键字来引用成员变量name。
返回当前对象
this关键字可以用于返回当前对象。在方法中,可以使用this关键字来返回当前对象。例如:
public class Person {
private String name;
public Person withName(String name) {
this.name = name;
return this;
}
}
在上面的示例中,withName()方法使用this关键字返回当前Person对象。这使得可以使用方法链来对同一对象进行多个操作。
这只是this关键字的几个常见用法,还有其他用法,如在内部类中引用外部类对象等。