黑马程序员技术交流社区

标题: 什么时候使用this关键字? [打印本页]

作者: 汐枫wait    时间: 2015-12-5 07:24
标题: 什么时候使用this关键字?
什么时候使用this关键字,看的时候不是很明白
作者: 野生小屌丝    时间: 2015-12-5 15:02
谁用就代表谁
作者: TG·小强    时间: 2015-12-5 15:32
本帖最后由 TG·小强 于 2015-12-5 15:45 编辑

this 是指:本类对象的引用。静态方法下,不能使用this与super,因为静态成员随类的加载而加载,优先于对象存在,故静态不可能知道后来创建的对象。至于什么时候用,只要你在编程,基本上就用到了this。只是省略了而已。
  1. class A
  2. {int x;
  3. int function(int a)
  4. {
  5. this.x=a;//其实这里就已经用到了(this.)x。这里其实this就代表对象new A();
  6. return x;
  7. }
  8. public static void main(String [] args)
  9. {
  10. System.out.println(new A().function(2));
  11. }
  12. }
复制代码

希望对你有帮助。

作者: xinxiangchen    时间: 2015-12-5 15:43
本类中有一个name变量,然后本类的函数的参数里边也有name,那么这个函数里边用this,或者是父类中有name,那么最好也区分是this还是super
作者: 许鹏飞    时间: 2015-12-5 16:58
代表当前对象!
作者: eddy1820    时间: 2015-12-5 23:00
比如說
private String name;
public void setName(String name) {
                this.name = name;
        }

形式參數name跟成員變量name重名時,就可以使用this來區分出來,表示本類的成員變量
作者: Myth、骞    时间: 2015-12-5 23:25
学多点,觉得那些代码可以优化的,考虑用this之类
作者: 胖小子    时间: 2015-12-6 11:26
  比如说 当new一个类的对象时,需要初始化参数,构造方法中,传入的参数和该类参数,出现同名变量时,初始化,需要 this.id = id(传入参数);  比如在 一个类中,使用了内部类,需要外部类对象,可以写为  外部类.this 得到外部类对象。




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