黑马程序员技术交流社区

标题: 关于this关键字的问题 [打印本页]

作者: 四海为家    时间: 2012-3-13 00:12
标题: 关于this关键字的问题
在代码中如何使用this这个关键字,也就是什么时候能用,它代表什么?在构造函数中也出现了this的用法,与其他代码中的this,有何区别呀?
作者: 潘许超    时间: 2012-3-13 00:16
this关键字:

构造函数可以被私有化,如果类中所有的构造函数都私有化的话,那样这个类是不会创建对象的因为对象是不可能进行初始化动作的

如果定义一个局部变量会首先使用局部的变量,然后在调用成员变量。

this的用法,看上去是用于去区分局部变量和成员变量同名的情况。

this为什么可以解决这个问题呢?this到底代表什么呢?this就代表本类的对象。到底哪一个呢?this代表他所在函数所属对象的引用

简单说,那个对象在调用this所在的函数,this就代表那个对象

this的特点:

this关键字的基本应用:当个义类中功能时,还函数内部要用到调用该函数对象是,这时用this代表这个对象。

但凡本类功能内部使用到了本类对象,都用this表示。

构造函数间互相调用需要this来实现。this(name);用的时候需要相对应的参数来实现。

注意:this语句只能定义在构造函数的第一行。初始化的动作要先执行,初始化中还有初始化的话要先执行初始化中的初始化。

作者: 秦超    时间: 2012-3-13 00:44
this关键字的作用是在成员变量和局部变量同名的时候给他们加以区分,用this关键字修饰的代表的是创建该对象的引用
构造函数中用this的作用是调用构造函数,因为构造函数不能像普通函数一样创建对象来调用,所以要用this调用,如果要调用父类中的构造函数,则需要用super来调用,用法和this一样
作者: 贠(yun)靖    时间: 2012-3-13 02:45
this关键字
        作用:用于区分局部变量和成员变量同名的情况
this:就代表本类的对象,创建的哪一个对象this就代表那一个对象。
this的应用:当定义类中的函数时,该函数内部要用到调用该函数的对象时
                        这时用this来表示这个对象
        this()语句:用于构造函数之间的互相调用。
注:this()必须放在第一句,初始化要先执行。
原因:Person(String name)             Person(String name int age)
{                                                                  {
        this.name=”小红”;                                        this.name=name;
                                                                        this();
                                                                        this.age=age;
}                                                                }
     Person p = new void Person(“小明”,22);
                而输出的名字会是小红  而不是小明,放到第一行,先给调用小红,再给他赋小明

作者: 李爱军    时间: 2012-3-13 07:40
this关键字
this:是用于区分成员变量和局部变量同名的情况。
this的特点:this代表的是本类的对象,this代表他所在函数所属对象的引用。简单说,哪个对象再调用this所在的函数,this就代表哪个对象
作者: 张红    时间: 2012-3-13 11:38
this 关键字  是在定义类中的功能时,该函数内部要用到调用该函数的对象时,用this来表示这个对象 。
如:public boolean compare(student stu)
      {
             return this.score==stu.score;
      }
同时因为在初始化时要先执行this语句,只能定义在构造函数的第一行。 this函数也不能用在一般函数 ,所以一般函数不能调用构造函数。
作者: 王杰    时间: 2012-3-13 12:01
this关键字:
this:用于区分局部变量和成员变量同名的情况;
this为什么能解决这个问题呢?
this到底代表什么?
this就代表本类的对象;
this代表他所在函数所属对象的引用;
简单说:那个对象在调用this所在的函数,this就代表那个对象。
肯定有一个对象在运行,运行时是哪一个对象this就代表哪个。
看到this就想到this代表一个对象,谁引用他他就代表谁。
this();
this语句用于构造函数之间进行互相调用;
this语句只能定义在构造函数的第一行,因为初始化要先执行。
this的用法:用于区分同名变量;用于构造函数间调用;一般函数是不能直接调用构造函数的,this是不能用在一般函数中的。只能用在构造函数间。
作者: 四海为家    时间: 2012-3-13 16:21
谢谢,你们的回答




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