谁能详细解释下this的意思
this一般是两种用法
public class Student{
//学生姓名私有化
private String name;
//实现name属性的getter&setter方法
public String getName() {
return name;
}
public void setName(String name) {
//这里的this.name表示我这个类中的name属性,也就是上面那个学生姓名私有化
this.name = name;
}
//有参的构造方法
public Student(String name){
this.name = name;
}
//无参的构造方法
public Student(){
//这里的this(name)表示调用上面的那个有参的构造方法,给他传入一个name
this(name);
}
}
//算是调用本类中的属性或者方法
举个例子:Student stu = new Student( ) ;首先你要明白,Student是一个类,可以创建很多对象。stu并不是对象,stu只是一个引用,指向Student类创建的一个对象,就好比一根绳子拴着一个气球一样,绳子是引用,气球是对象。明白这个就好理解了:this代表的就是当前对象的引用,以tStudent类为例,this的作用就和stu是一样的了,就可以去调用Student类的属性和方法了
this表示当前对象。
public class HelloWorld { int num = 3; public void show() { System.out.println(this.num); } public static void main(String[] args) { HelloWorld test = new HelloWorld(); System.out.println(test.num); test.show(); } }
this.num和test.num两个输出结果相同,本例中的this相当于类HelloWorld的对象test。
public class Test6 {
int age=2;
void Aa(){
int age=1;
System.out.println(age);//内部方法的age
System.out.println(this.age);//类中的age
}
public static void main(String[] args) {
Test6 t=new Test6();
t.Aa();
}
}
Java中的this关键字
1.this关键字代表当前对象
this.属性 操作当前对象的属性
this.方法 调用当前对象的方法
2.封装对象的属性的时候,经常会使用this关键字
this的通俗含义:不论生成哪个对象调用了这个方法,都会生成一个指向这个对象的指针