this关键字
this的本质就是“创建好的对象的地址”
this关键字作用一
- 可以把成员变量和局部变量区分开,一般是成员变量名与局部变量名相同时使用。
下面是一个学生类,仔细看,你会发现定义在类里的变量名和方法的参数名都是一样的。
public class Student {
// 下面的name sex age是三个成员变量(也叫做全局变量)
String name ="丽丽";
String sex="男";
int age=18;
// 这是一个有参构造方法,1:方法名与类名一致。2:构造方法不能写返回值,也不能用void修饰符
public Student(String name,String sex,int age){
//方法里的变量都是局部变量,方法的参数也是局部变量
//到这里可以看到,成员变量名跟局部变量名一样。此时就要用this关键字来区分两者。
this.name=name;
this.sex=sex;
this.age=age;
//用this关键字的变量表示是成员变量,这里是告诉程序,把该方法的局部变量值赋值给成员变量。让程序区分开哪个是成员变量。
System.out.println("我是有参构造"+this.age+"的"+this.name+"是"+this.sex+"生");
}
}
下面是测试和结果,遗忘的知识点要及时复习:
public class Text01 {
public static void main(String[] args) {
// 创建对象的同时调用了有参的构造,进行初始化赋值
Student stu1=new Student("花花","女",12);
}
}
我是有参构造12的花花是女生