ywzxfz 2015-12-05 09:51 采纳率: 100%
浏览 1778
已采纳

java中this和Thread.currentThread()区别,见下代码

public class hello extends Thread {

public hello(String name){
super(name);
System.out.println("Thread.currentThread().getname()="+Thread.currentThread().getName());

    System.out.println("This.getName="+this.getName());
    }
public void run(){

    System.out.println("Thread.currentThread().getname()="+Thread.currentThread().getName());

    System.out.println("This.getName="+this.getName());
}
public static void main(String[] args){

 Thread t1=new Thread(new hello("A"));
 t1.setName("B");
 t1.start();

}
}
得到Thread.currentThread().getname()=main
This.getName=A
Thread.currentThread().getname()=B
This.getName=A
为什么会得到B和A不一样的名字

  • 写回答

3条回答 默认 最新

  • threenewbee 2015-12-05 09:53
    关注

    this得到的是当前的对象。java为这个对象创建一个线程运行,这个线程也有对象,两个不是一回事。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?