this关键字
this关键字指向的是当前对象的引用
注意:this不能再static所修饰的方法运用
使用方式
this.属性
指的是访问类中的成员变量,一般当成员变量与局部变量重名的时候 我们可以使用this进行区分
this.方法
用来访问本类的成员方法
this()
这种情况一般应用于在构造器中调用构造器,以避免代码重复,
()中可以有参数的 如果有参数 就是调用指定的有参构造。
例如:
class User{
String id;
String password;
User(String id){
this.id=id; //访问类中的成员变量,用以区分和属性同名的形参
}
User(String id,String password){
this(id); //构造器中调用构造器
this.password=password;
}
}
注意:
- this() 不能使用在普通方法中 只能写在构造方法中。
- 必须是构造方法中的第一条语句。
- 构造方法中使用时必须在构造方法的第一行。
this充当实际参数使用
this使用自身的值充当实际参数,和返回值使用。(比如就可以如下调用 )
例如:
class Test{
int i=0;
Test leiJia(){
i++; //每调用一次i累加
return this; //调用完返回当前对象
}
static void shuCu(Test a){ //工具方法用来输出类的i值
System.out.println(a.i);
}
public static void main(String[] args) {
Test x=new Test();
//下面的代码的意思是x类调用4次leiJia()方法,然后调用工具类输出x类的i值
Test.shuCu(x.leiJia().leiJia().leiJia().leiJia());
}
}