多线程原理_多线程内存图解

Thread类的常用方法_获取线程名称的方法
获取线程名称:
1.使用Thread类中的方法getName()
String getName() 返回该线程的名称,
public class demg_03 extends Thread{//继承线程
@Override
public void run() {//重写线程方法
//获取线程名称
String name = getName();
System.out.println(name);
}
}
class kak{
public static void main(String[] args) {
demg_03 d = new demg_03();
//调用start方法,开启新线程,执行run方法
d.start();
//获取多线程
new demg_03().start();
new demg_03().start();
new demg_03().start();
}
}
运行结果:

2.可以先获取到当前正在执行的线程,使用线程中的方法getName()获取线程的名称
static Thread currentThread() 返回对当前正在执行的线程对象的引用
public class demg_03 extends Thread{//继承线程
@Override
public void run() {//重写线程方法
//获取线程名称
String name = getName();
System.out.println(name);
// 获取当前正在执行的线程
Thread thread = Thread.currentThread();
System.out.println(thread);
//链式编程
// System.out.println(Thread.currentThread().getName());
}
}
//主方法
class kak{
public static void main(String[] args) {
demg_03 d = new demg_03();
//调用start方法,开启新线程,执行run方法
d.start();
//获取多线程
new demg_03().start();
new demg_03().start();
new demg_03().start();
}
}
运行结果:

链式编程
public class demg_03 extends Thread{//继承线程
@Override
public void run() {//重写线程方法
//获取线程名称
// String name = getName();
// System.out.println(name);
//
//// 获取当前正在执行的线程
// Thread thread = Thread.currentThread();
// System.out.println(thread);
//链式编程
System.out.println(Thread.currentThread().getName());
}
}
class kak{
public static void main(String[] args) {
demg_03 d = new demg_03();
//调用start方法,开启新线程,执行run方法
d.start();
//获取多线程
new demg_03().start();
new demg_03().start();
new demg_03().start();
//链式编程
System.out.println(Thread.currentThread().getName());//获取主线程
}
}
运行结果:

原创文章,作者:,如若转载,请注明出处:https://blog.ytso.com/tech/aiops/272322.html