黑马程序员技术交流社区

标题: [以解决]this关键字问题 [打印本页]

作者: 黄克帅    时间: 2012-5-21 17:46
标题: [以解决]this关键字问题
本帖最后由 黄克帅 于 2012-6-11 13:27 编辑

这里的this 具体是只什么?

public class Person {
        int i ;
        
        Person(){}

        Person(int i) {
                this.i = i;
        }

         Person unmber() {
                i++;
                return this;
        }
        
        public void print(){
                System.out.println("i="+i);
        }


}
作者: Fc10232    时间: 2012-5-21 17:47
这里指的是当前对象,谁调用的指的就是谁

作者: 韩国军    时间: 2012-5-21 17:47
this的作用:
1,在构造器中,代表该构造器所创建的实例对象。
2,在方法中,指调用该方法的对象。
3,在流离块中。只流离块所属的类的实例。
总而言之,记住一句话,this是指当前对象,哪个对象在调那个方法,this就代表那个对象。


作者: 杨梦宇    时间: 2012-5-21 17:52
this.i=i; 这句好比这个类说的一句话 :这个类说:“我将来生成的那个实例对象的i 就等于我接收的这个i” 。假设你写构造函数的时候接收的那个变量写成j 那就没必要用this了,用this只是为了避免让编译器分不清两个i到底哪个是哪个
作者: 张成龙    时间: 2012-5-21 18:08
this代表它所在函数所属对象的引用。即:哪个对象在调用this所在的函数,this就代表哪个对象。
作者: 李海    时间: 2012-5-21 19:19
对于this注意两点:1,当我new一个对象的时候,用对象去调用函数,那么,函数里面的this就是指的就是这个对象;
                 2,this的使用,主要是为了让程序易读;简单点来说就是弄清,一个变量时赋给栈中的局部变量还是堆中的成员变量
作者: 黄克帅    时间: 2012-5-21 20:47
韩国军 发表于 2012-5-21 17:47
this的作用:
1,在构造器中,代表该构造器所创建的实例对象。
2,在方法中,指调用该方法的对象。

琉璃块是什么东西
作者: 杨康    时间: 2012-5-21 20:48
分不清就记结论,this哪个对象在调用,就代表哪个对象。
作者: 荣天    时间: 2012-5-21 21:35
this代表本类对象,哪个对象调用this所 函数
this就代表哪个对象




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2