this关键字用法详解
简介
大多数人都知道可以用this调用类对象的成员变量,最为熟悉的就是get和set方法中对this的使用,但是我们还可以使用它去调用类中的方法,甚至是构造方法也是可以的。那么java语言的设计者,为什么要创建this关键字呢?
我的个人理解是,this关键字可以让我们很方便的去在一个类的内部,根据实际需求去操作类的成员变量,也为我们在类内调用类中的成员方法提供了便捷。this关键字其实就是就相当于当前类对象
一、调用类对象的成员变量
puble class Test1{
private String name;
privatte int age;
public String getName() {
return name;
}
public void setName(String name) {
/* 这里的this有两个作用
* 1、将方法传入的形参赋值给类内的属性
* 2、因为两者名字相同,this也可以起到区分的作用
*/
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
调用类对象的成员方法
一:构造方法
Java使用this调用构造方法时,必须在构造方法内,并且必须位于构造方法的第一行,一个构造方法体内只能使用一次this调用构造方法
public Demo(){
System.out.println("测试");
}
public Demo(String name) {
this();
this.name = name;
}
二:普通方法
直接用this调用类内方法
public String testFunction(String name){
return name;
}
public void test(){
this.name = this.testFunction("Hello World");
}
三:作为方法的参数
this可作为当前类对象带入方法体中,将普通方法重写可得
public String testFunction(String name,Demo demo){
return name;
}
public void test(){
this.name = this.testFunction("Hello World",this);
}