java中的this
时间: 2024-09-14 19:04:50 浏览: 13
`this` 关键字在 Java 中有两层主要的含义:
1. 指代当前对象实例本身:`this` 关键字可以用来指代当前对象实例。在方法内部,你可能想引用该对象的属性或调用其他方法。由于方法参数和方法内的局部变量可以和类的成员变量有相同的名字,此时可以使用 `this` 来区分成员变量和局部变量。
2. 用于构造器间的调用:`this` 关键字还可以在一个构造器中调用同一个类的另一个构造器,这通常用于减少代码重复。这种调用必须是构造器中的第一条语句。
下面是一个使用 `this` 的简单例子:
```java
public class MyClass {
private int number;
private String name;
public MyClass(int number, String name) {
this.number = number;
this.name = name;
}
public MyClass(String name) {
this(0, name); // 使用this调用另一个构造器,并传递默认值给number
}
public void setNumber(int number) {
this.number = number; // 区分成员变量和方法参数
}
public void setName(String name) {
this.name = name; // 同上
}
public void display() {
System.out.println("Number: " + this.number + " Name: " + this.name);
}
}
public class Main {
public static void main(String[] args) {
MyClass obj1 = new MyClass(10, "Example1");
MyClass obj2 = new MyClass("Example2");
obj1.display();
obj2.display();
}
}
```
在这个例子中,`this` 被用于区分成员变量 `number` 和 `name` 与在构造器和方法中作为参数的局部变量。同时,一个构造器使用 `this` 来调用另一个构造器。