java中this关键字的用法
Java中的this关键字用于引用当前对象。它可以用于以下几种情况:
在构造函数中,this关键字可以用来调用同一个类中的另一个构造函数。这种情况下,this关键字必须是构造函数中的第一条语句。
在实例方法中,this关键字可以用来引用当前对象的成员变量或方法。
在静态方法中,this关键字不能使用,因为静态方法不属于任何对象。
在匿名内部类中,this关键字可以用来引用外部类的对象。
在方法链式调用中,this关键字可以用来返回当前对象,以便实现方法链式调用。
例如:
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public Person() {
this("Unknown", 0); // 调用另一个构造函数
}
public void setName(String name) {
this.name = name;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return this.name;
}
public int getAge() {
return this.age;
}
public Person getPerson() {
return this; // 返回当前对象
}
}
在内部类中,this关键字可以用来引用内部类的对象。如果内部类和外部类有同名的成员变量或方法,可以使用this关键字来区分。
在Lambda表达式中,this关键字可以用来引用外部类的对象。
在方法参数中,this关键字不能使用。
总之,this关键字在Java中非常常用,可以用来引用当前对象,调用同一个类中的另一个构造函数,引用当前对象的成员变量或方法,返回当前对象,引用内部类的对象等等。