JAVA基础(十五)this关键字
This 代表本类;
This的特点:
This . 成员方法 调用本类的成员方法,也可以调用父类的方法;
This (参数列表)调用的是当前类的另一个构造函数,只能在构造函数之间使用,只执行一次
This() 必须放在第一行
可以在成员变量名前面加上this.来区别成员变量和局部变量
自己理解:谁调用this,this就代表了谁。
Public Class Student { String name; //定义一个成员变量name
// 无参数的构造方法
Student(){
}
// 给姓名初始化的构造方法
Student(String nm) {
name = nm;
}
private void SetName(String name) { //定义一个参数(局部变量)name //this.name代表本类name,
//由于已经存在给姓名进行初始化的构造方法 name = nm;因此只需要调用即可
// 调用其他构造方法,需要通过this关键字来调用
this.name=name; //将局部变量的值传递给成员变量
}
}
两个变量名字如果相同的话如果在某个变量前面加上一个this关键字,其指的就是这个对象的成员变量或者方法,
而不是指成员方法的形式参数或者局部变量
在一个Java类中,其方法可以分为成员方法和构造方法两种。
构造方法是一个与类同名的方法,在Java类中必须存在一个构造方法。
如果在代码中没有显示的体现构造方法的话,那么编译器在编译的时候会自动添加一个没有形式参数的构造方法。
这个构造方法跟普通的成员方法还是有很多不同的地方。
所以this关键字不仅可以用来引用成员变量,而且还可以用来引用构造方法。
返回对象的值
this关键字除了可以引用变量或者成员方法之外,还有一个重大的作用就是返回类的引用。
如在代码中,可以使用return this,来返回某个类的引用。此时这个this关键字就代表类的名称。
如代码在上面student类中,那么代码代表的含义就是return student。
可见,这个this关键字除了可以引用变量或者成员方法之外,还可以作为类的返回值,这才是this关键字最引人注意的地方。