1.在类的方法中,使用this关键字代表的是调用此方法的对象的引用;如下例子中,也就是在类中调用this.age,就相当于调用stu.age
class Student{
int age;
void printage(){
System.out.println(this.age);
}
}
public class This{
public static void main(String[] args){
Student stu=new Student();
stu.age=18;
stu.printage();
}
}
2.this可以看作一个变量,它的值是当前对象的引用
class Student{
int age;
void printAge(){
System.out.println(this.age);
}
void newObject(){
Student stu2=null;
stu2=this;
stu2.printAge();
}
}
public class This{
public static void main(String[] args){
Student stu1=new Student();
stu.age=18;
stu1.newObject();
}
}
3.this方法可以用于区分方法中的成员变量和形参同名问题(常用)
class Student{
int age;
String name;
Student(int age,String name){
this.age=age;
this.name=name;
}
void printAgeName(){
System.out.println("name:"+name+"\nage:"+age);
}
void newObject(){
Student stu2=null;
stu2=this;
}
}
public class This{
public static void main(String[] args){
Student stu1=new Student(18,"小明");
stu1.printAgeName();
}
}
4.在一个构造方法中调用另一个构造方法(常用)
class Student{
int age;
String name;
String sex;
Student(String name){
this.name=name;
System.out.println("第一个构造方法\nname="+this.name);
}
Student(String name,int age){
this.age=age;
this.name=name;
}
Student(String name,int age,String sex){
this("小红");
this.age=age;
this.name=name;
this.sex=sex;
}
void information(){
System.out.println("name:"+name+"\nage:"+age+"\nsex:"+sex);
}
}
public class This{
public static void main(String[] args){
Student stu1=new Student("小明",18,"男");
stu1.information();
}
}