A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 18734903493 中级黑马   /  2015-7-31 23:48  /  1168 人查看  /  15 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 18734903493 于 2015-8-5 23:45 编辑

构造函数中的this代表什么?
eg:  this.name = name;
这是什么意思?

15 个回复

倒序浏览
this代表其所在方法所属对象的引用,例如:1、public void setName(String name){ name = name }
     第一个name属于局部变量
     public void setName(String name){ this.name = name }
     第二个this.name属于成员变量
使用:
     1、用于解决局部变量隐藏成员变量的问题。
          通过this可以直接调用成员变量
回复 使用道具 举报
代表调用他的对象
回复 使用道具 举报
this和super关键字一起记会好些。
this:代表本类对象的引用。      本类,有对象
super:代表父类的内存空间标示          父类,无对象,只是内存空间标示(成员,方法)
1、super:   通过super可以直接调用父类的构造方法,成员变量,成员方法。
                              调用构造方法:super()
                              调用成员变量:super.变量名
                              调用成员方法:super.方法名()

2、this:      通过this可以直接调动本类的构造方法,成员变量,成员方法
                              调用构造方法:this()
                              调用成员变量:this.变量名
                              调用成员方法:this.方法名()
回复 使用道具 举报
有点意思
回复 使用道具 举报
我预言,未来是你的!
回复 使用道具 举报
哪个对象调用的方法就代表那个对象
回复 使用道具 举报
this代表本类对象
回复 使用道具 举报
就是构造函数所属的那个类中定义的name   this代表那个类的对象
回复 使用道具 举报
AI_96 发表于 2015-8-1 23:12
我预言,未来是你的!

额,这句话好像我和别人也说过
回复 使用道具 举报
代表本类对象
回复 使用道具 举报
this.name = 本類成员变量
回复 使用道具 举报
this和super的区分
概念上的区别?super代表的是父类内存空间标识。
this代表所在方法所属对象的引用。
什么时候使用?1、当子父类中出现同名成员可以用super区分
2、子类调用父类的构造方法可以用super
调用方式 1、super:   通过super可以直接调用父类的构造方法,成员变量,成员方法。
                              调用构造方法:super()
                              调用成员变量:super.变量名
                              调用成员方法:super.方法名()

2、this:      通过this可以直接调动本类的构造方法,成员变量,成员方法
                              调用构造方法:this()                              调用成员变量:this.变量名
                              调用成员方法:this.方法名()

使用this、和super时,要在方法内使用。
回复 使用道具 举报
this代表当前的成员变量,在这里代表name
回复 使用道具 举报
把name传到构造函数后,赋给这个对象的name,即哪个对象调用这个函数,this就代表哪个对象
回复 使用道具 举报
this代表方法中本类对象的引用。构造函数中的是,谁在调用它创建对象,就代表哪个引用
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马