currentThread的一个复杂案例

SubThread2.java

package com.dym.juc.threadmethod;

public class SubThread2 extends Thread {
    public SubThread2() {
        System.out.println("构造方法中,Thread.currentThread().getName():"+Thread.currentThread().getName());
        System.out.println("构造方法中,this.getName():"+this.getName());

    }

    @Override
    public void run() {
        System.out.println("run方法中,Thread.currentThread().getName():"+Thread.currentThread().getName());
        System.out.println("run方法中,this.getName():"+this.getName());
    }
}

Test02CurrentThread.java

package com.dym.juc.threadmethod;

public class Test02CurrentThread {
    public static void main(String[] args) throws InterruptedException {
        SubThread2 t2 = new SubThread2();
        t2.setName("t2");
        t2.start();

        Thread.sleep(500);

        //Thread(Runnable) 构造方法形参是Runnable接口,调用时传递的实参是接口的实现类对象
        Thread t3=new Thread(t2);
        t3.start();
    }
}

猜你喜欢

转载自blog.csdn.net/qq_39368007/article/details/115340029