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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 吴波 中级黑马   /  2013-4-25 23:39  /  1764 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 吴波 于 2013-4-26 11:37 编辑

这个this,真无法理解了。。。求高手帮帮

1.jpg (61.73 KB, 下载次数: 50)

1.jpg

评分

参与人数 1技术分 +1 收起 理由
张熙韬 + 1

查看全部评分

7 个回复

倒序浏览
this表示当前对象或者指自己所在的对象;
说得再通俗点就是表示自己所在的类的那个对象。
synchronized(this)表示加的锁是它所在的类的对象的锁。

解释起来有点拗口,建议你重新看看毕老师对this解释的视频,
后面的对this的应用挺多的。

评分

参与人数 1技术分 +1 收起 理由
张熙韬 + 1

查看全部评分

回复 使用道具 举报
this指代当前类对象
回复 使用道具 举报
本帖最后由 罗海清 于 2013-4-26 07:57 编辑

谁调用这个代码,this就代表谁,还蛋疼不?
回复 使用道具 举报
this表示当前对象,你要是实在不理解 ,可以先往后边听,听个两三遍就懂了
回复 使用道具 举报
多看看代码就知道了,应该是谁调用这个方法,this就代表哪个对象,这串代码在run()方法里面,那么谁调用run(),这个this就代表谁。
回复 使用道具 举报
本帖最后由 袁梦希 于 2013-4-26 10:48 编辑

楼主你好:
如果该线程是为了产生同步,那么show方法中的锁应该与同步代码块中的锁保持一致。
当前的对象可以理解为,就是这个类,用了一个this代替这个类,
因为在show()方法中的锁就是当前的对象,所以同步代码块中的锁也应该是this对象。
所以同步代码块的锁不能定义为obj对象。

如果帖子没有问题了,那么请把帖子的类型改为“已解决”。{:soso_e102:}
回复 使用道具 举报
吴波 中级黑马 2013-4-26 11:36:57
8#
谢谢各位,我懂了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马