请举例说明this指针的作用
时间: 2024-10-28 22:13:16 浏览: 5
在面向对象编程中,`this`关键字是一个特殊的指针,它引用了当前对象自身。它的作用主要有以下几点:
1. **区分成员变量和局部变量**:当你在方法内部有一个同名的局部变量时,通过`this`可以明确地访问到属于该对象本身的成员变量。
```java
public class Person {
private String name;
public void setName(String newName) {
this.name = newName; // 这里"this.name"表示的是对象自身的name属性
}
}
```
2. **调用构造函数**: 在构造函数内部,通常会用`this`来调用其他构造函数,以初始化父类或合并构造行为。
```java
public class Employee extends Person {
public Employee(String name, int id) {
super(name); // 调用Person类的无参构造,此时用this.name传递name参数
this.id = id; // 这里"this.id"同样代表Employee对象的id属性
}
}
```
3. **作为参数传递**:虽然不常见,但在某些场景下,如回调函数,`this`也可以作为参数传入。
```java
public class MyClass {
public void doSomething(selfCallback callback) {
callback(this);
}
interface selfCallback {
void execute(MyClass obj);
}
}
```
阅读全文