如何给线程起名字呢?

法一:通过无参构造+setXxx()给线程起名字

 1 package cn.itcast_03;
 2 
 3 /*
 4  * 
 5  * Thread类的方法:
 6  *         public final String getName() 获取线程对象的名称(放在需要被线程执行的代run()方法里面)
 7  *         public final void setName(String name) 设置线程对象的名称
 8  */
 9 public class MyThreadDemo {
10     public static void main(String[] args) {
11         // 创建线程对象
12         // 通过无参构造方法+setXxx()方法线程起名字
13         MyThread my1 = new MyThread();
14         MyThread my2 = new MyThread();
15         // 调用方法设置名称
16         my1.setName("林青霞");
17         my2.setName("刘意");
18         my1.start();
19         my2.start();
20     }
21 }
 1 package cn.itcast_03;
 2 
 3 public class MyThread extends Thread {
 4     // 需要被线程执行的代码
 5     @Override
 6     public void run() {
 7         for (int x = 0; x < 100; x++) {
 8             System.out.println(getName() + ":" + x);
 9         }
10     }
11 }

法二:通过带参构造方法给线程起名字

 1 package cn.itcast_03;
 2 
 3 /*
 4  * 
 5  * Thread类的方法:
 6  *         public final String getName() 获取线程对象的名称(放在需要被线程执行的代run()方法里面)
 7  *         public final void setName(String name) 设置线程对象的名称
 8  */
 9 public class MyThreadDemo {
10     public static void main(String[] args) {
11         // 创建线程对象
12         // 通过带参构造方法给线程起名字
13         MyThread my1 = new MyThread("林青霞");
14         MyThread my2 = new MyThread("刘意");
15         my1.start();
16         my2.start();
17     }
18 }
 1 package cn.itcast_03;
 2 
 3 public class MyThread extends Thread {
 4     public MyThread() {
 5         super();
 6     }
 7 
 8     public MyThread(String name){
 9         super(name);
10     }
11     // 需要被线程执行的代码
12     @Override
13     public void run() {
14         for (int x = 0; x < 100; x++) {
15             System.out.println(getName() + ":" + x);
16         }
17     }
18 }
原文地址:https://www.cnblogs.com/chenmingjun/p/8719648.html