Thread类的常用方法_获取线程名称的方法和Thread类的常用方法_设置线程名称的方法

构造方法:
public Thread();分配一个新的线程对象
public Thread(String name);分配一个指定名字的新的线程对象
public Thread(Runnable target);分配一个带有指定目标新的线程对象
public Thread(Runnable target,String name);分配一个带有指定目标新的线程对象并指定名字

常用方法:
public String getName() 获取当前线程名称.
public void start();导致次线程开始执行;java虚拟机调用此线程的run方法。
public void run();此线程要执行的任务在此定义代码
public static void sleep(long millis);使当前正在执行的线程以指定的毫秒数暂停(暂时停止执行)
public static Thread currentThread();返回堆正在执行的线程对象的引用

//线程的名称:
//Thread类中的方法getName().
//String getName();返回当前线程的名称
//可以线获取当前正在执行的线程,使用线程中的方法getName()获取线程的名称
//static Thread currentThread();返回对当前正在执行的线程的对象的引用

package com.yang.Test.ThreadStudy;

public class MyThread extends Thread{
    @Override
    public void run() {
//        String name = getName();
//        System.out.println(name);

/*        Thread thread = Thread.currentThread();
        System.out.println(thread);

        String name = thread.getName();
        System.out.println(name);*/

        System.out.println(Thread.currentThread().getName());
    }
}


package com.yang.Test.ThreadStudy;

/**
 * 线程的名称:
 * 主线程main-0
 * 新线程:Thread-0,Thread-1,Thread-2
 */
public class GetThreadName {
    public static void main(String[] args) {
        MyThread myThread = new MyThread();
        myThread.start();

        new MyThread().start();
    }
}

设置线程名称的方法

public class SetThreadName {
    public static void main(String[] args) {
/*        MyThread myThread = new MyThread();
        myThread.setName("线程1");
        myThread.start();*/

        //第二种方式
        new Thread(new MyThread(),"线程1").start();

    }
}


package com.yang.Test.ThreadStudy;

/**
 * 设置线程的名称:
 * 1.使用Thread类中的方法setName(名称);
 *      void setName(String name);
 *      改变线程的名称,使之与参数name相同
 * 2.创建一个带参数的构造方法,参数传递的就是线程的名称;调用父类的带参构造方法,把线程名称传递给父类,让父类(Thread)给子线程起一个名字
 */
public class MyThread extends Thread{
    @Override
    public void run() {
        System.out.println(Thread.currentThread().getName());
    }
}

posted @ 2022-07-07 19:08  我滴妈老弟  阅读(58)  评论(0编辑  收藏  举报