this关键字主要由以下两个作用。
一、解决局部变量与成员变量的冲突
代码如下:
此时调用的age实际上是成员变量age
class Person{
int age;
public Person(int age){
this.age=age;
}
public int getAge(){
return this.age;
}
}
二、在一个方法中调用另一个方法
首先可以在一个成员方法中调用另一个成员方法
class ahh{
int age;
public void speak(){
System.out.println("age="+age);
}
public void ss(){
this.speak();
}
}
也可以在一个构造方法中调用另一个构造方法
class Person{
int age;
public Person(){
System.out.println("1");
}
public Person(int age1){
this();
System.out.println("2");
}
}
public class Main {
public static void main(String[] args) {
Person p2=new Person(20);
}
}
但是使用this时有几点需要注意
1.this只能从成员方法中调用其他的成员方法,或者从构造方法中调用其他的构造方法。不可以相互混调。
2.调用方法时this()语句只能放在方法的第一行。
3.在一个类中的两个方法中不可以相互调用