面向对象
this
1 概念
在Java中,this 是一个关键字,表示当前对象的引用。它用于解决成员变量和局部变量同名的情况,以及在构造函数中调用同类的其他构造函数。
2 作用
- 区分成员变量和局部变量: 当成员变量和局部变量同名时,使用this关键字可以明确指定是成员变量还是局部变量。
- 在构造函数中调用其他构造函数: 使用this关键字可以在构造函数内部调用同类的其他构造函数,实现代码复用。
3 语法
3.1 区分成员变量和局部变量
public class MyClass {
// 成员变量
int x;
// 构造函数
public MyClass(int x) {
// 使用this关键字区分成员变量和局部变量
this.x = x;
}
}
示例
public class Student {
// 成员变量
String name;
// 构造函数
public Student(String name) {
// 使用this关键字区分成员变量和局部变量
this.name = name;
}
// 方法
public void displayInfo() {
System.out.println("Student Name: " + this.name);
}
}
3.2 在构造函数中调用其他构造函数
public class MyClass {
// 成员变量
int x;
// 构造函数1
public MyClass() {
// 在构造函数内部调用另一个构造函数
this(0);
}
// 构造函数2
public MyClass(int x) {
this.x = x;
}
}
示例
public class Car {
// 成员变量
String model;
int year;
// 默认构造函数
public Car() {
// 在构造函数内部调用另一个构造函数
this("Unknown Model", 0);
}
// 构造函数
public Car(String model, int year) {
this.model = model;
this.year = year;
}
}