" this" 是什么意思 看了半天还是不懂 请指教!
" this" 是什么意思 看了半天还是不懂 请指教! 问题点数:25、回复次数:7Top
1 楼xiaoyud202()回复于 2006-03-15 17:26:20 得分 0
当前对象的意思....Top
2 楼gaoxiangyu123(忧郁的风)回复于 2006-03-15 17:26:59 得分 0
我的理解:这个类的一个引用对象(非实例化的),你可以把this当成一个对象用,你加在它上面的属性和方法,都会反映到这个类的实例化对象上。Top
3 楼treeroot(旗鲁特)回复于 2006-03-15 17:27:09 得分 0
自己Top
4 楼francis_zj(健健)回复于 2006-03-15 17:28:24 得分 0
当我们调用方法的时候,系统除了要传递形参外,还要传递方法所属对象的地址,正如: 对象名.方法名(参数...);如果用THIS关键字,就说明你想调用的是使用这个类所创建的那个对象(由于那个对象现在并没有创建,而是在调用这个类时才创建,所以JAVA语言提供了这种方式),也可以不写THIS,系统会默认加this关键字
THIS还有一个用处就是:如果方法中的形参名和类中的变量同名的话,使用THIS就说明是类中的变量而不是行参,如:
...
int b;
... a(int b)
{
this.b = b;//this.b是类中定义的b;
//b是传递进来的参数b
}
Top
5 楼francis_zj(健健)回复于 2006-03-15 17:28:56 得分 12
虽然JAVA中没有指针的概念,但THIS就相当于指针,指的是自己(本类)
技巧方面,可以在成员函数中为避免与参数变量名重名时而调用成员变量,另一个用途就是象其他(或本类)传递或ADD类的对象时,避免new方法而使用THISTop
6 楼polarman(北极人http://blog.csdn.net/polarman)回复于 2006-03-15 17:30:27 得分 13
class 人{
double x = 0.0d; //当前位置
void 向前走(){
this.x += 1;
}
}
public void static main(String args[]){
人 小强 = new 人();
人 小丽 = new 人();
小强.向前走();//这个函数调用里的this指小强
小丽.向前走();//这个函数调用里的this指小丽
}
明白了吧!this指“当前对象”Top
7 楼qq14923349(剑神)回复于 2006-03-15 17:30:28 得分 0
和SUPER相对
方便提取父类方法Top




