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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© jsfjb 中级黑马   /  2012-11-1 14:35  /  1673 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Thread.currentThread().getName(); 是获取一个线程的名字。
类名.getName();也是获取一个线程的名字。
这两者有什么区别和联系?
请高手指点。

评分

参与人数 1黑马币 +6 收起 理由
韩军博 + 6 神马都是浮云

查看全部评分

3 个回复

倒序浏览
类名.getName()
是指哪个类名?你测试过吗?Thread.getName()应该不可以吧,getName()不是静态方法,不能被Thread类直接调用的。
回复 使用道具 举报
getName()不是静态方法,不能用类名直接调用
Thread.currentThread()的返回值是当前正在执行的线程的对象的引用,所以可以调用getName()方法
而currentThread()方法时静态的,所以可以被Thread直接调用。
回复 使用道具 举报
Thread.currentThread().getName();是获取当前正在运行的线程的名字,而如果你写了一个实现了runnable接口的类时,你用this.getName()是获取当前类的名称,如果你创建实现了runnable接口的实现类是,传递了一个name,然后通过构造方法的super(name),通过重新的机制,将修改线程的名称。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马