第1个回答 2012-06-15
1 当前类的一个当前对象
2 成员方法中可以无条件的调用同一个类的其他成员,默认以this.调用
第2个回答 2006-12-01
this表示当前对象!楼上的兄弟说错了~
看看这个
public class TestClass
{
int x,y;
void testShow(int x,int y){
this.x=x; //this.x 就是我们上 int x,y;中的X 。x是我们传来的x
this.y=y;
}
}
第3个回答 推荐于2018-02-27
这个this肯定是用在某个类的方法里吧?呵呵,我们继续往下说。
举个例子:
public class persion{
private String name=null;
private int age;
public void setName(String name){
this.name=name;
}
public String getName(){
return name;
}
}
在这个类中setName方法中第一个变量用this是为了和本方法的参数this做区别,表示这个name指的是Person这个类的name属性,而不是name参数,如果去掉这个this,执行完这个方法后,Person类的name属性仍然为null
getName方法返回的Person类的name,之所以不用this是因为没有必要,因为编译器会知道这个name就指的是Person的name而不是其他的name(因为找个方法没有name变量和它混淆)。当然,这个方法你也可以显示的使用return this.name,没错。本回答被提问者和网友采纳
第4个回答 2006-12-01
this 确实麻烦。他表示的是当前对象,对象象你知道的就有很多拉,变量拉,线程等等。
上面那个例子不错,不过为了让你更清楚一点,有几点经验:
1.This用来表示全局变量,全局变量你应该知道(那你应该就知道楼上那段代码的答案了);
2.看这里:
public class TestClass
{
int x;
int y;
static void showtest(TestClass tc){
System.out.println(tc.x+" "+tc.y);
}
void seeit(){
showtest(this);
}
public static void main(String[] args){
TestClass p=new TestClass();
p.x=9;
p.y=10;
p.seeit();
}
}
我不知道你是否理解这段代码中showtest(this),这里的this就是把当前实例化 的 p传给了showtest方法,从而就运行了。。
我觉得懂了这2点就可以理解(最起码读懂)大部分的代码了!